wanazesi commited on
Commit
fb31778
·
verified ·
1 Parent(s): 295f89d

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +20 -3
main.py CHANGED
@@ -29,8 +29,24 @@ async def chat_completions(request: Request):
29
  body = {}
30
 
31
  messages = body.get("messages", [])
32
- # 获取用户发送的最后一条消息
33
- user_msg = messages[-1]["content"] if messages else ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
 
35
  headers = {
36
  "Authorization": f"Bearer {AIROPS_API_KEY}",
@@ -40,13 +56,14 @@ async def chat_completions(request: Request):
40
  # 构造 AirOps 需要的数据格式
41
  payload = {
42
  "inputs": {
43
- INPUT_VAR: user_msg
44
  }
45
  }
46
 
47
  async def generate():
48
  # 设置 120 秒超时,防止长文本生成失败
49
  async with httpx.AsyncClient(timeout=120.0) as client:
 
50
  url = f"https://app.airops.com/public_api/airops_apps/{AIROPS_APP_ID}/execute"
51
 
52
  try:
 
29
  body = {}
30
 
31
  messages = body.get("messages", [])
32
+
33
+ # 【酒馆特供版】将所有历史消息和设定拼接成一个长剧本
34
+ full_context = ""
35
+ for msg in messages:
36
+ role = msg.get("role", "user").upper()
37
+ content = msg.get("content", "")
38
+
39
+ # 统一格式化标签,让 AI 知道是谁在说话
40
+ if role == "SYSTEM":
41
+ full_context += f"[系统设定及角色卡]:\n{content}\n\n"
42
+ elif role == "ASSISTANT":
43
+ full_context += f"[角色回复]:\n{content}\n\n"
44
+ else:
45
+ full_context += f"[我的输入]:\n{content}\n\n"
46
+
47
+ # 如果没有收到任何消息,给个默认值
48
+ if not full_context.strip():
49
+ full_context = "[我的输入]:\n你好"
50
 
51
  headers = {
52
  "Authorization": f"Bearer {AIROPS_API_KEY}",
 
56
  # 构造 AirOps 需要的数据格式
57
  payload = {
58
  "inputs": {
59
+ INPUT_VAR: full_context.strip()
60
  }
61
  }
62
 
63
  async def generate():
64
  # 设置 120 秒超时,防止长文本生成失败
65
  async with httpx.AsyncClient(timeout=120.0) as client:
66
+ # 已修复:改为 app.airops.com
67
  url = f"https://app.airops.com/public_api/airops_apps/{AIROPS_APP_ID}/execute"
68
 
69
  try: