跳至主要內容

SambaNova

SambaNovaSambastudio 是一個用於執行您自己的開源模型的平台

此範例將說明如何使用 LangChain 與 SambaNova Embedding 模型互動

SambaStudio

SambaStudio 允許您訓練、執行批次推論工作,以及部署線上推論端點以執行您自己微調的開源模型。

部署模型需要 SambaStudio 環境。在 sambanova.ai/products/enterprise-ai-platform-sambanova-suite 取得更多資訊

註冊您的環境變數

import os

sambastudio_base_url = "<Your SambaStudio environment URL>"
sambastudio_base_uri = "<Your SambaStudio environment URI>"
sambastudio_project_id = "<Your SambaStudio project id>"
sambastudio_endpoint_id = "<Your SambaStudio endpoint id>"
sambastudio_api_key = "<Your SambaStudio endpoint API key>"

# Set the environment variables
os.environ["SAMBASTUDIO_EMBEDDINGS_BASE_URL"] = sambastudio_base_url
os.environ["SAMBASTUDIO_EMBEDDINGS_BASE_URI"] = sambastudio_base_uri
os.environ["SAMBASTUDIO_EMBEDDINGS_PROJECT_ID"] = sambastudio_project_id
os.environ["SAMBASTUDIO_EMBEDDINGS_ENDPOINT_ID"] = sambastudio_endpoint_id
os.environ["SAMBASTUDIO_EMBEDDINGS_API_KEY"] = sambastudio_api_key

直接從 LangChain 呼叫 SambaStudio 託管的 Embedding!

from langchain_community.embeddings.sambanova import SambaStudioEmbeddings

embeddings = SambaStudioEmbeddings()

text = "Hello, this is a test"
result = embeddings.embed_query(text)
print(result)

texts = ["Hello, this is a test", "Hello, this is another test"]
results = embeddings.embed_documents(texts)
print(results)

您可以手動傳遞端點參數,並手動設定 SambaStudio Embedding 端點中的批次大小

embeddings = SambaStudioEmbeddings(
sambastudio_embeddings_base_url=sambastudio_base_url,
sambastudio_embeddings_base_uri=sambastudio_base_uri,
sambastudio_embeddings_project_id=sambastudio_project_id,
sambastudio_embeddings_endpoint_id=sambastudio_endpoint_id,
sambastudio_embeddings_api_key=sambastudio_api_key,
batch_size=32, # set depending on the deployed endpoint configuration
)

或者,您可以使用部署在 CoE 中的 Embedding 模型專家

embeddings = SambaStudioEmbeddings(
batch_size=1,
model_kwargs={
"select_expert": "e5-mistral-7b-instruct",
},
)

此頁面是否對您有幫助?