Datenquelle – Pinecone (Preview)
Die konfigurierbaren Optionen von Pinecone bei Verwendung von Azure OpenAI On Your Data. Diese Datenquelle wird in der API-Version 2024-02-15-preview
unterstützt.
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
parameters |
Parameter | True | Die Parameter, die beim Konfigurieren von Pinecone verwendet werden sollen. |
type |
Zeichenfolge | True | Muss pinecone lauten. |
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
environment |
Zeichenfolge | True | Der Umgebungsname von Pinecone. |
index_name |
Zeichenfolge | True | Der Name des Pinecone-Datenbankindex. |
fields_mapping |
FieldsMappingOptions | True | Angepasstes Feldzuordnungsverhalten, das beim Interagieren mit dem Suchindex verwendet werden soll |
authentication |
ApiKeyAuthenticationOptions | True | Die Authentifizierungsmethode, die beim Zugriff auf die definierte Datenquelle verwendet werden soll. |
embedding_dependency |
DeploymentNameVectorizationSource | True | Die Einbettungsabhängigkeit für die Vektorsuche |
in_scope |
boolean | False | Gibt an, ob Abfragen auf die Verwendung von indizierten Daten beschränkt werden sollen. Der Standardwert ist True . |
role_information |
Zeichenfolge | False | Gibt dem Modell Anweisungen dazu, wie es sich verhalten soll und auf welchen Kontext es beim Generieren einer Antwort verweisen soll. Sie können die Persönlichkeit des Assistenten beschreiben und ihm mitteilen, wie Antworten formatiert werden sollen. |
strictness |
integer | False | Die konfigurierte Strenge der Suchrelevanzfilterung. Je höher die Strenge, desto höher der Genauigkeit, aber desto der niedrigerer Antwortabruf. Der Standardwert ist 3 . |
top_n_documents |
integer | False | Die konfigurierte maximale Anzahl von Dokumenten, die für die konfigurierte Abfrage bereitgestellt werden sollen. Der Standardwert ist 5 . |
API-Schlüsselauthentifizierungsoptionen
Die Authentifizierungsoptionen für Azure OpenAI On Your Data bei Verwendung eines API-Schlüssels.
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
key |
Zeichenfolge | True | Der für die Authentifizierung zu verwendende API-Schlüssel. |
type |
Zeichenfolge | True | Muss api_key lauten. |
Quelle für die Bereitstellungsnamenvektorisierung
Die Details der Vektorisierungsquelle, die von Azure OpenAI On Your Data beim Anwenden der Vektorsuche verwendet wird. Diese Vektorisierungsquelle basiert auf einem internen Namen der Einbettung der Modellimplementierung in derselben Azure OpenAI-Ressource. Mit dieser Vektorisierungsquelle können Sie die Vektorsuche ohne Azure OpenAI-API-Schlüssel und ohne öffentlichen Azure OpenAI-Netzwerkzugriff verwenden.
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
deployment_name |
Zeichenfolge | True | Der Name der Einbettung der Modellimplementierung innerhalb derselben Azure OpenAI-Ressource. |
type |
Zeichenfolge | True | Muss deployment_name lauten. |
Feldzuordnungsoptionen
Die Einstellungen zum Steuern der Verarbeitung von Feldern.
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
content_fields |
string[] | True | Die Namen von Indexfeldern, die als Inhalt behandelt werden sollen. |
content_fields_separator |
Zeichenfolge | False | Das Trennmuster, das Inhaltsfelder verwenden sollen. Der Standardwert ist \n . |
filepath_field |
Zeichenfolge | False | Der Name des Indexfelds, das als Dateipfad verwendet werden soll. |
title_field |
Zeichenfolge | False | Der Name des Indexfelds, das als Titel verwendet werden soll |
url_field |
Zeichenfolge | False | Der Name des Indexfelds, das als URL verwendet werden soll |
Beispiele
Voraussetzungen:
- Konfigurieren Sie die Rollenzuweisungen vom Benutzer zur Azure OpenAI-Ressource. Erforderliche Rolle:
Cognitive Services OpenAI User
. - Installieren Sie Az CLI und führen Sie
az login
aus. - Definieren Sie die folgenden Umgebungsvariablen:
AzureOpenAIEndpoint
,ChatCompletionsDeploymentName
,Environment
,IndexName
,Key
,EmbeddingDeploymentName
.
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export Environment=testenvironment
export Key=***
export IndexName=pinecone-test-index
export EmbeddingDeploymentName=ada
Installieren Sie die neuesten pip-Pakete 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")
environment = os.environ.get("Environment")
key = os.environ.get("Key")
index_name = os.environ.get("IndexName")
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-15-preview",
)
completion = client.chat.completions.create(
model=deployment,
messages=[
{
"role": "user",
"content": "Who is DRI?",
},
],
extra_body={
"data_sources": [
{
"type": "pinecone",
"parameters": {
"environment": environment,
"authentication": {
"type": "api_key",
"key": key
},
"index_name": index_name,
"fields_mapping": {
"content_fields": [
"content"
]
},
"embedding_dependency": {
"type": "deployment_name",
"deployment_name": embedding_deployment_name
}
}}
],
}
)
print(completion.model_dump_json(indent=2))