Adatforrás – Azure Cosmos DB a MongoDB virtuális maghoz
A MongoDB-hez készült Azure Cosmos DB virtuális mag konfigurálható beállításai az Azure OpenAI On Your Data használatakor. Ez az adatforrás az API-verzióban 2024-02-01
támogatott.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
parameters |
Paraméterek | Igaz | Az Azure Cosmos DB MongoDB virtuális maghoz való konfigurálásakor használandó paraméterek. |
type |
húr | Igaz | Kell lennie azure_cosmos_db . |
Paraméterek
Név | Típus | Kötelező | Leírás |
---|---|---|---|
database_name |
húr | Igaz | Az Azure Cosmos DB-hez használandó MongoDB virtuálismag-adatbázis neve. |
container_name |
húr | Igaz | Az Azure Cosmos DB-erőforrástároló neve. |
index_name |
húr | Igaz | Az Azure Cosmos DB-vel használandó MongoDB virtuálismag-index neve. |
fields_mapping |
FieldsMappingOptions | Igaz | Testre szabott mezőleképezési viselkedés, amelyet a keresési index használata során használhat. |
authentication |
ConnectionStringAuthenticationOptions | Igaz | A megadott adatforrás elérésekor használandó hitelesítési módszer. |
embedding_dependency |
Az Egyik DeploymentNameVectorizationSource, EndpointVectorizationSource | Igaz | A vektorkeresés beágyazási függősége. |
in_scope |
Logikai | Hamis | Azt határozza meg, hogy a lekérdezések az indexelt adatok használatára legyenek-e korlátozva. Az alapértelmezett szint a True . |
role_information |
húr | Hamis | Adja meg a modell utasításait arról, hogy hogyan kell viselkednie, és minden olyan környezetet, amelyre hivatkoznia kell a válasz létrehozásakor. Leírhatja az asszisztens személyiségét, és megtudhatja, hogyan formázhatja a válaszokat. |
strictness |
egész szám | Hamis | A keresési relevancia szűrésének konfigurált szigorúsága. Minél magasabb a szigorúság, annál nagyobb a pontosság, de annál kisebb a válasz visszahívása. Az alapértelmezett szint a 3 . |
top_n_documents |
egész szám | Hamis | A konfigurált lekérdezéshez használható dokumentumok maximális száma. Az alapértelmezett szint a 5 . |
Kapcsolati sztring hitelesítési beállításai
Az Azure OpenAI on Your Data hitelesítési lehetőségei kapcsolati sztring használatakor.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
connection_string |
húr | Igaz | A hitelesítéshez használni kívánt kapcsolati sztring. |
type |
húr | Igaz | Kell lennie connection_string . |
Üzembehelyezési név vektorizálási forrása
A vektorizációs forrás részletei, amelyeket az Azure OpenAI használ az Adatokon vektorkeresés alkalmazásakor. Ez a vektorizálási forrás egy belső beágyazási modell üzembehelyezési nevére épül ugyanabban az Azure OpenAI-erőforrásban. Ez a vektorizálási forrás lehetővé teszi a vektorkeresés használatát az Azure OpenAI api-kulcs és az Azure OpenAI nyilvános hálózati hozzáférése nélkül.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
deployment_name |
húr | Igaz | A beágyazási modell üzembehelyezési neve ugyanabban az Azure OpenAI-erőforrásban. |
type |
húr | Igaz | Kell lennie deployment_name . |
Végpontvektorizálási forrás
A vektorizációs forrás részletei, amelyeket az Azure OpenAI használ az Adatokon vektorkeresés alkalmazásakor. Ez a vektorizálási forrás az Azure OpenAI beágyazási API-végpontján alapul.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
endpoint |
húr | Igaz | Megadja az erőforrásvégpont URL-címét, amelyből le kell kérni a beágyazásokat. A formátumnak https://{YOUR_RESOURCE_NAME}.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings a következőnek kell lennie: . Az API-verziójú lekérdezési paraméter nem engedélyezett. |
authentication |
ApiKeyAuthenticationOptions | Igaz | Megadja a beágyazások a megadott végpontról való lekéréséhez használandó hitelesítési beállításokat. |
type |
húr | Igaz | Kell lennie endpoint . |
API-kulcsok hitelesítési beállításai
Az Azure OpenAI on Your Data hitelesítési lehetőségei API-kulcs használata esetén.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
key |
húr | Igaz | A hitelesítéshez használandó API-kulcs. |
type |
húr | Igaz | Kell lennie api_key . |
Mezők leképezési beállításai
A mezők feldolgozásának módját vezérlő beállítások.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
content_fields |
sztring[] | Igaz | A tartalomként kezelendő indexmezők nevei. |
vector_fields |
sztring[] | Igaz | A vektoradatokat ábrázoló mezők nevei. |
content_fields_separator |
húr | Hamis | Az elválasztó minta, amelyet a tartalommezőknek használniuk kell. Az alapértelmezett szint a \n . |
filepath_field |
húr | Hamis | A fájlútvonalként használandó indexmező neve. |
title_field |
húr | Hamis | A címként használni kívánt indexmező neve. |
url_field |
húr | Hamis | Az URL-címként használni kívánt indexmező neve. |
Példák
Előfeltételek:
- Konfigurálja a szerepkör-hozzárendeléseket a felhasználótól az Azure OpenAI-erőforráshoz. Kötelező szerepkör:
Cognitive Services OpenAI User
. - Telepítse az Az CLI-t, és futtassa.
az login
- Adja meg a következő környezeti változókat:
AzureOpenAIEndpoint
,ChatCompletionsDeploymentName
,ConnectionString
,Database
,Container
,Index
,EmbeddingDeploymentName
.
Feljegyzés
Az alábbiak például csak a következők. Ha kapcsolati sztring használ, tárolja biztonságosan máshol, például az Azure Key Vaultban. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan.
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export ConnectionString='<db-connection-string>'
export Database=testdb
export Container=testcontainer
export Index=testindex
export EmbeddingDeploymentName=ada
Telepítse a legújabb pipcsomagokat openai
, azure-identity
.
import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
endpoint = os.environ.get("AzureOpenAIEndpoint")
deployment = os.environ.get("ChatCompletionsDeploymentName")
connection_string = os.environ.get("ConnectionString")
database = os.environ.get("Database")
container = os.environ.get("Container")
index = os.environ.get("Index")
embedding_deployment_name = os.environ.get("EmbeddingDeploymentName")
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default")
client = AzureOpenAI(
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider,
api_version="2024-02-01",
)
completion = client.chat.completions.create(
model=deployment,
messages=[
{
"role": "user",
"content": "Who is DRI?",
},
],
extra_body={
"data_sources": [
{
"type": "azure_cosmos_db",
"parameters": {
"authentication": {
"type": "connection_string",
"connection_string": connection_string
},
"database_name": database,
"container_name": container,
"index_name": index,
"fields_mapping": {
"content_fields": [
"content"
],
"vector_fields": [
"contentvector"
]
},
"embedding_dependency": {
"type": "deployment_name",
"deployment_name": embedding_deployment_name
}
}
}
],
}
)
print(completion.model_dump_json(indent=2))