在本教程中,我们将指导您完成创建与 LiteLLM Proxy 集成的 Chainlit 应用程序的步骤

使用 Chainlit 和 LiteLLM Proxy 的好处是

如果您已在使用 Langchain 或 LlamaIndex 等其他集成,则不应配置此集成。这两种集成都会记录相同的生成内容,并在 UI 中创建重复的步骤。

前提条件

开始之前,请确保您已具备以下条件

步骤 1:创建一个 Python 文件

在您的项目目录中创建一个名为 app.py 的新 Python 文件。此文件将包含您的 LLM 应用程序的主要逻辑。

步骤 2:编写应用逻辑

app.py 中,导入必要的包并定义一个函数来处理来自 UI 的传入消息。

from openai import AsyncOpenAI
import chainlit as cl
client = AsyncOpenAI(
    api_key="anything",            # litellm proxy virtual key
    base_url="http://0.0.0.0:4000" # litellm proxy base_url
)

# Instrument the OpenAI client
cl.instrument_openai()

settings = {
    "model": "gpt-3.5-turbo", # model you want to send litellm proxy
    "temperature": 0,
    # ... more settings
}

@cl.on_message
async def on_message(message: cl.Message):
    response = await client.chat.completions.create(
        messages=[
            {
                "content": "You are a helpful bot, you always reply in Spanish",
                "role": "system"
            },
            {
                "content": message.content,
                "role": "user"
            }
        ],
        **settings
    )
    await cl.Message(content=response.choices[0].message.content).send()

步骤 3:运行应用程序

要启动您的应用程序,请打开终端并导航到包含 app.py 的目录。然后运行以下命令

chainlit run app.py -w

-w 标志告诉 Chainlit 启用自动重新加载,这样您每次更改应用程序时都不需要重新启动服务器。您的聊天机器人 UI 现在应该可以在 https://:8000 访问了。