@@ -6,4 +6,184 @@ Translate the Hoshino Platform into an API interface for integration 简单将
66<img src =" https://github.com/TwperBody/SimHoshino-API/blob/main/sim.png " alt =" SimHoshino " />
77</a >
88
9+ # SimHoshino API 服务器
910
11+ ## 📖 简介
12+
13+ 这是一个与OpenAI API完全兼容的服务器,可以将您现有的星野AI智能体消息处理系统包装成标准的OpenAI API接口。
14+
15+ ## 🚀 快速开始
16+
17+ ### 1. 启动服务器
18+
19+ ** 方法:手动启动**
20+ ``` bash
21+ # 安装依赖
22+ pip install -r requirements.txt
23+
24+ # 启动服务器
25+ python main.py
26+ ```
27+ 运行 dnplayer.exe并登录星野,打开模型的对话界面,尝试发送一条消息,检查是否能够正常响应。
28+
29+
30+ ### 2. 验证服务器状态
31+
32+ 服务器启动后,访问以下地址验证:
33+ - 健康检查: http://localhost:5000/health
34+ - 服务器信息: http://localhost:5000/
35+ - 模型列表: http://localhost:5000/v1/models
36+
37+ ## 📡 API 端点
38+
39+ ### 1. 聊天完成 ` /v1/chat/completions `
40+
41+ ** 请求示例:**
42+ ``` json
43+ POST http://localhost:5000/v1/chat/completions
44+ Content-Type: application/json
45+
46+ {
47+ "model" : " SimHoshino-agent" ,
48+ "messages" : [
49+ {"role" : " user" , "content" : " 你好,请介绍一下自己" }
50+ ],
51+ "stream" : false
52+ }
53+ ```
54+
55+ ** 响应示例:**
56+ ``` json
57+ {
58+ "id" : " chatcmpl-12345678" ,
59+ "object" : " chat.completion" ,
60+ "created" : 1699123456 ,
61+ "model" : " SimHoshino-agent" ,
62+ "choices" : [{
63+ "index" : 0 ,
64+ "message" : {
65+ "role" : " assistant" ,
66+ "content" : " 您好!我是忍冬智能体..."
67+ },
68+ "finish_reason" : " stop"
69+ }],
70+ "usage" : {
71+ "prompt_tokens" : 10 ,
72+ "completion_tokens" : 50 ,
73+ "total_tokens" : 60
74+ }
75+ }
76+ ```
77+
78+ ### 2. 流式响应
79+
80+ 设置 ` "stream": true ` 可启用流式响应(暂时不支持)
81+
82+
83+ ### 3. 模型列表 ` /v1/models `
84+
85+ ``` json
86+ GET http://localhost:5000/v1/models
87+ ```
88+
89+ ## 🔧 配置与集成
90+
91+ ### 在现有应用中使用
92+
93+ 将API基础URL设置为 ` http://localhost:5000 ` ,即可在任何支持OpenAI API的应用中使用:
94+
95+ ** Python示例:**
96+ ``` python
97+ import openai
98+
99+ client = openai.OpenAI(
100+ base_url = " http://localhost:5000/v1" ,
101+ api_key = " not-needed" # 可以是任意值
102+ )
103+
104+ response = client.chat.completions.create(
105+ model = " SimHoshino-agent" ,
106+ messages = [
107+ {" role" : " user" , " content" : " 你好!" }
108+ ]
109+ )
110+
111+ print (response.choices[0 ].message.content)
112+ ```
113+
114+ ** curl示例:**
115+ ``` bash
116+ curl -X POST http://localhost:5000/v1/chat/completions \
117+ -H " Content-Type: application/json" \
118+ -d ' {
119+ "model": "SimHoshino-agent",
120+ "messages": [{"role": "user", "content": "你好"}],
121+ "stream": false
122+ }'
123+ ```
124+
125+ ## 🧪 测试
126+
127+ 运行测试客户端验证功能:
128+ ``` bash
129+ python test_client.py
130+ ```
131+
132+ ## 🔍 故障排除
133+
134+ ### 常见问题
135+
136+ 1 . ** 智能体未回复**
137+ - 确保智能体系统正在运行
138+ - 检查智能体是否在线
139+ - 增加等待时间(目前为3秒)
140+
141+ 2 . ** 无法检测智能体**
142+ - 确保页面中有@符号消息
143+ - 检查智能体名称是否正确
144+
145+ 3 . ** 端口占用**
146+ - 修改main.py中的端口号
147+ - 或关闭占用5000端口的其他程序
148+
149+ ### 调试模式
150+
151+ 服务器默认运行在调试模式,会输出详细的日志信息:
152+ - 📨 收到的用户消息
153+ - ✅ 消息发送状态
154+ - 🔍 检测到的智能体
155+ - ✅ 智能体回复内容
156+
157+ ## 📈 性能优化
158+
159+ - ** 并发处理** :支持多个客户端同时请求
160+ - ** 错误恢复** :自动处理网络异常和超时
161+ - ** 资源管理** :合理的内存和CPU使用
162+
163+ ## 🔒 安全注意事项
164+
165+ - 服务器默认绑定到所有网络接口(0.0.0.0)
166+ - 生产环境建议:
167+ - 使用反向代理(nginx)
168+ - 添加身份验证
169+ - 启用HTTPS
170+ - 限制访问IP
171+
172+ ## 📞 技术支持
173+
174+ 如遇问题,请检查:
175+ 1 . Python版本(建议3.8+)
176+ 2 . 依赖包是否正确安装
177+ 3 . 智能体系统是否正常运行
178+ 4 . 网络连接是否正常
179+
180+ ---
181+
182+ ##特别感谢
183+
184+ [ senzhk/ADBKeyBoard] ( https://github.com/senzhk/ADBKeyBoard/tree/master?tab=GPL-2.0-1-ov-file )
185+
186+
187+ ** 版本** : 1.0.0
188+ ** 兼容性** : OpenAI API v1
189+ ** 许可证** : GPL-2.0
0 commit comments