Add system prompt in '/generate' endpoint

#1
Files changed (1) hide show
  1. app.py +8 -1
app.py CHANGED
@@ -57,6 +57,7 @@ def check_rate_limit():
57
 
58
  # ── Request schema ─────────────────────────────────────────────────────────────
59
  class GenerateRequest(BaseModel):
 
60
  prompt: str
61
  model: str = "gpt2"
62
  max_tokens: int = 50
@@ -86,9 +87,15 @@ def generate(req: GenerateRequest):
86
  logger.info(f"Request: model={model_id}, max_tokens={max_tokens}, prompt_len={len(req.prompt)}")
87
 
88
  try:
 
 
 
 
 
 
89
  response = client.chat.completions.create(
90
  model=model_id,
91
- messages=[{"role": "user", "content": req.prompt}],
92
  max_tokens=max_tokens,
93
  logprobs=True,
94
  )
 
57
 
58
  # ── Request schema ─────────────────────────────────────────────────────────────
59
  class GenerateRequest(BaseModel):
60
+ system_prompt: str = "" # added system prompt
61
  prompt: str
62
  model: str = "gpt2"
63
  max_tokens: int = 50
 
87
  logger.info(f"Request: model={model_id}, max_tokens={max_tokens}, prompt_len={len(req.prompt)}")
88
 
89
  try:
90
+ messages = []
91
+ # add system prompt to messages if provided
92
+ if req.system_prompt:
93
+ messages.append({"role": "system", "content": req.system_prompt})
94
+ messages.append({"role": "user", "content": req.prompt})
95
+
96
  response = client.chat.completions.create(
97
  model=model_id,
98
+ messages=messages,
99
  max_tokens=max_tokens,
100
  logprobs=True,
101
  )