Skip to main content

大模型对话标准接口。支持模板对话、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


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)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openai_simple_chat-0.1.7-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

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

Hashes for openai-simple-chat-0.1.7.tar.gz
Algorithm Hash digest
SHA256 4c154b4c69ce7fd19d042e5ec167c6ccdbcf8f2cbb3c7f500fc5f078f0f7b755
MD5 d5a03353308425e5865f5361fe830b0c
BLAKE2b-256 99b47ba5a2cbc5e5e2b6eae64d4598109340845b5564adaee5e6ad5c7bc6e229

See more details on using hashes here.

File details

Details for the file openai_simple_chat-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for openai_simple_chat-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 71c9921b5a3e3277d66d4f6d58a69e5bcd8100e1bf82cca6de0976ca78497a07
MD5 5face69077792f90568e31f0580015ac
BLAKE2b-256 13d3707e35dccce0d813506fcbd7aa899d0d6d9a3f66de2e0316ec097681b44c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page