使用Helicone增强LangChain项目的观测能力

86 阅读2分钟

使用Helicone增强LangChain项目的观测能力

引言

在我们的AI和编程项目中,观测和优化API调用的性能和费用变得越来越重要。Helicone为我们提供了一个开源的平台,使我们能够代理OpenAI的流量,并且可以详细了解支出、延迟和使用情况。本篇文章将介绍如何在LangChain环境中使用Helicone来更好地观测和优化OpenAI API的调用。

主要内容

什么是Helicone?

Helicone是一个开源的观测平台,它可以代理你的OpenAI流量,提供关键的支出、延迟和使用情况的见解。通过这种方式,你可以优化API的使用,同时减少成本。

快速开始

要在你的LangChain环境中使用Helicone,只需添加以下参数:

export OPENAI_API_BASE="https://oai.hconeai.com/v1"

接下来,访问 helicone.ai 创建一个账户,并在你的仪表盘中添加OpenAI API密钥,以查看日志。

如何启用Helicone缓存

要启用Helicone缓存,你可以使用以下代码示例:

from langchain_openai import OpenAI
import openai

# 使用API代理服务提高访问稳定性
openai.api_base = "https://oai.hconeai.com/v1"

llm = OpenAI(temperature=0.9, headers={"Helicone-Cache-Enabled": "true"})
text = "What is Helicone?"
print(llm.invoke(text))

如何使用Helicone自定义属性

Helicone允许你添加自定义属性,以便更好地管理和分类API调用。以下是使用自定义属性的示例:

from langchain_openai import OpenAI
import openai

# 使用API代理服务提高访问稳定性
openai.api_base = "https://oai.hconeai.com/v1"

llm = OpenAI(temperature=0.9, headers={
        "Helicone-Property-Session": "24",
        "Helicone-Property-Conversation": "support_issue_2",
        "Helicone-Property-App": "mobile",
      })
text = "What is Helicone?"
print(llm.invoke(text))

常见问题和解决方案

API调用失败

有时,由于网络限制或其他因素,API调用可能会失败。这时,使用API代理服务(如https://oai.hconeai.com/v1)可以大大提高访问的稳定性。

缓存无效

如果发现缓存没有生效,请确保在请求头中正确设置了Helicone-Cache-Enabled"true",并且你的请求参数和URL路径没有影响缓存的因素。

总结和进一步学习资源

通过使用Helicone,你可以明显改善对OpenAI API调用的观测和优化,从而有效地控制成本,提高调用的稳定性和响应速度。如果你对更多详细内容感兴趣,可以参考以下资源:

参考资料

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