大模型对话标准接口。支持模板对话、JSON对话等。
Project description
openai-simple-chat
大模型对话标准接口。支持模板对话、JSON对话等。
安装
pip install openai-simple-chat
环境变量配置项
- OPENAI_BASE_URL # 支持openai兼容服务
- OPENAI_API_KEY
- OPENAI_CHAT_MODEL
- OLLAMA_BASE_URL # 支持ollama兼容服务
- OLLAMA_API_KEY
- OLLAMA_CHAT_MODEL
- OPENAI_SIMPLE_CHAT_TEMPLATE_ENGINE # 其它设置
- OPENAI_SIMPLE_CHAT_LOGGER_NAME
使用方法
test_templates/calc.txt
以标准json返回以下计算结果数值【输出格式为:{"result": xx}】:{{expression}}
main1.py
import openai_simple_chat
llm = openai_simple_chat.OpenAIChatService(
template_engine=openai_simple_chat.get_template_prompt_by_jinjia2,
template_root="test_templates",
)
response, response_info = llm.jsonchat(
template="calc.txt",
expression="1+1",
)
assert response
assert response_info
assert isinstance(response, dict)
assert isinstance(response_info, dict)
assert "result" in response
assert response["result"] == 2
# 注意,如果是stream_chat的话,response可能为空字符串。
main2.py
import openai_simple_chat
llm = openai_simple_chat.OllamaChatService(
template_engine=openai_simple_chat.get_template_prompt_by_jinjia2,
template_root="test_templates",
)
response, response_info = llm.jsonchat(template="calc.txt", expression="1+1")
assert response
assert response_info
assert isinstance(response, dict)
assert isinstance(response_info, dict)
assert "result" in response
assert response["result"] == 2
版本记录
v0.1.0
- 版本首发。
- 支持模板对话。
- 支持json对话。
- 兼容openai和ollama服务。
- 兼容django和jinja2模板引擎。
- jsonchat已经对deekseek输出的
think过程输出进行处理。
v0.1.1
- OpenAIService服务支持max_tokens参数。
v0.1.2
- 添加:get_template_prompt_by_django_template_source_engine提示词模板引擎。
- 改进:更灵活的服务初始化构造和调用。
v0.1.3
- 修正:直接使用template生成提示词而无需prompt的情况下报错的问题。
v0.1.4
- 添加:动态计算max_tokens的机制。
- 修改:移除max_input_tokens和max_output_tokens参数。
- 修正:openai的streaming_chat问题。
- 修正:ollama的对话问题。
v0.1.5
- 优化:非标准json输出的处理,支持半开json块的解析。
v0.1.7
- 优化:添加extra_messages参数。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
openai-simple-chat-0.1.7.tar.gz
(16.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openai-simple-chat-0.1.7.tar.gz.
File metadata
- Download URL: openai-simple-chat-0.1.7.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c154b4c69ce7fd19d042e5ec167c6ccdbcf8f2cbb3c7f500fc5f078f0f7b755
|
|
| MD5 |
d5a03353308425e5865f5361fe830b0c
|
|
| BLAKE2b-256 |
99b47ba5a2cbc5e5e2b6eae64d4598109340845b5564adaee5e6ad5c7bc6e229
|
File details
Details for the file openai_simple_chat-0.1.7-py3-none-any.whl.
File metadata
- Download URL: openai_simple_chat-0.1.7-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71c9921b5a3e3277d66d4f6d58a69e5bcd8100e1bf82cca6de0976ca78497a07
|
|
| MD5 |
5face69077792f90568e31f0580015ac
|
|
| BLAKE2b-256 |
13d3707e35dccce0d813506fcbd7aa899d0d6d9a3f66de2e0316ec097681b44c
|