**在Arthur平台上监控您的Chat LLM:从入门到精通的实用指南**

33 阅读2分钟
# 引言

在现代机器学习应用中,监控和可观察性至关重要。Arthur是一个强大的平台,专为模型监控和可观察性而设计。在这篇文章中,我们将探讨如何使用Arthur回调处理程序在Arthur平台上自动记录语言模型推断结果。如果你尚未在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"

回调处理程序

接下来,我们需要导入必要的模块:

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

创建带有Arthur回调处理程序的Langchain LLM

我们定义一个函数来创建Langchain的语言模型,这个模型会通过回调处理程序实时将模型推断结果记录到Arthur平台。

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
            ),
        ],
    )

chatgpt = make_langchain_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)

常见问题和解决方案

  • 为什么我的回调函数没有被调用? 确保回调函数已正确注册和附加到相应的事件或条件。

  • 如何处理回调函数中的错误? 在回调函数中实现异常处理以处理潜在错误,确保你的程序可以优雅地应对意外情况。

总结和进一步学习资源

利用Arthur的回调处理程序,可以实现对你的语言模型的实时监控,实现异步和事件驱动编程,提升模型的响应能力和模块化设计。为了深入学习,可以参考以下资源:

参考资料

  1. Arthur Platform Documentation
  2. Langchain Documentation

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

---END---