主题
llama-index-embeddings-heroku 包包含 LlamaIndex 集成,用于在 Heroku 的 Managed Inference 平台上使用嵌入模型构建应用。该集成让你可以轻松连接并使用部署在 Heroku 基础设施上的 AI 模型。
安装
%pip install llama-index-embeddings-heroku1
设置
1. 创建 Heroku 应用
首先,在 Heroku 中创建一个应用:
终端窗口
heroku create $APP_NAME1
2. 创建并附加 AI 模型
创建聊天模型并将其附加到你的应用:
终端窗口
heroku ai:models:create -a $APP_NAME cohere-embed-multilingual --as EMBEDDING1
3. 导出配置变量
导出所需的配置变量:
终端窗口
export EMBEDDING_KEY=$(heroku config:get EMBEDDING_KEY -a $APP_NAME)
export EMBEDDING_MODEL_ID=$(heroku config:get EMBEDDING_MODEL_ID -a $APP_NAME)
export EMBEDDING_URL=$(heroku config:get EMBEDDING_URL -a $APP_NAME)1
2
3
2
3
用量
基本用法
# Initialize the Heroku LLM
from llama_index.embeddings.heroku import HerokuEmbedding
# Initialize the Heroku Embedding
embedding_model = HerokuEmbedding()
# Get a single embedding
embedding = embedding_model.get_text_embedding("Hello, world!")
print(f"Embedding dimension: {len(embedding)}")
# Get embeddings for multiple texts
texts = ["Hello", "world", "from", "Heroku"]
embeddings = embedding_model.get_text_embedding_batch(texts)
print(f"Number of embeddings: {len(embeddings)}")1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
使用环境变量
该集成会自动从环境变量中读取:
import os
# Set environment variables
os.environ["EMBEDDING_KEY"] = "your-embedding-key"
os.environ["EMBEDDING_URL"] = "https://us.inference.heroku.com"
os.environ["EMBEDDING_MODEL_ID"] = "claude-3-5-haiku"
# Initialize without parameters
llm = HerokuEmbedding()1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
使用参数
你也可以直接传入参数:
import os
from llama_index.embeddings.heroku import HerokuEmbedding
embedding_model = HerokuEmbedding(
model=os.getenv("EMBEDDING_MODEL_ID", "cohere-embed-multilingual"),
api_key=os.getenv("EMBEDDING_KEY", "your-embedding-key"),
base_url=os.getenv("EMBEDDING_URL", "https://us.inference.heroku.com"),
timeout=60.0,
)
print(embedding_model.get_text_embedding("Hello Heroku!"))1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
可用模型
如需查看可用模型的完整列表,请参阅 Heroku Managed Inference 文档。
错误处理
该集成针对常见问题提供了完善的错误处理:
- 缺少 API 密钥
- 推理 URL 无效
- 缺少模型配置
更多信息
如需了解有关 Heroku Managed Inference 的更多信息,请访问官方文档。