Źródło danych — Pinecone (wersja zapoznawcza) (wersja klasyczna)

Dotyczy tylko:Portal foundry (klasyczny). Ten artykuł nie jest dostępny dla nowego portalu foundry. Dowiedz się więcej o nowym portalu.

Note

Linki w tym artykule mogą otwierać zawartość w nowej dokumentacji Microsoft Foundry zamiast dokumentacji rozwiązania Foundry (klasycznej), którą teraz przeglądasz.

Important

Azure openAI on Your Data jest przestarzała i zbliża się do wycofania.

Microsoft przestał dołączać nowe modele, aby Azure openAI na danych. Ta funkcja obsługuje tylko następujące modele:

  • GPT-4o (wersje 2024-05-13, 2024-08-06 i 2024-11-20)
  • GPT-4o-mini (wersja 2024-07-18)
  • GPT-4.1, GPT-4.1-mini i GPT-4.1-nano (wersja 2025-04-14)

Once modele GPT-4.1 wycofają wszystkie Azure OpenAI w punktach końcowych interfejsu API danych i obsługiwane łączniki źródła danych przestają działać.

Zalecamy przeprowadzenie migracji obciążeń Azure OpenAI On Your Data do Foundry Agent Service z Foundry IQ w celu pobrania zawartości i wygenerowania uziemionych odpowiedzi na podstawie danych. Aby rozpocząć, zobacz Connect a Foundry IQ knowledge base (Łączenie bazy wiedzy IQ rozwiązania Foundry).

Konfigurowalne opcje Pinecone podczas korzystania z Azure OpenAI na Twoich danych. To źródło danych jest obsługiwane, począwszy od wersji 2024-02-15-previewinterfejsu API .

Name Typ Required Description
parameters Parameters True Parametry do użycia podczas konfigurowania Pinecone.
type ciąg True Musi mieć wartość pinecone.

Parameters

Name Typ Required Description
environment ciąg True Nazwa środowiska Pinecone.
index_name ciąg True Nazwa indeksu bazy danych Pinecone.
fields_mapping FieldsMappingOptions True Dostosowane zachowanie mapowania pól do użycia podczas interakcji z indeksem wyszukiwania.
authentication ApiKeyAuthenticationOptions True Metoda uwierzytelniania używana podczas uzyskiwania dostępu do zdefiniowanego źródła danych.
embedding_dependency DeploymentNameVectorizationSource True Zależność osadzania dla wyszukiwania wektorowego.
in_scope boolean False Czy zapytania powinny być ograniczone do używania indeksowanych danych. Wartość domyślna to True.
role_information ciąg False Przekaż instrukcje dotyczące sposobu działania modelu i dowolnego kontekstu, do którego powinien się odwoływać podczas generowania odpowiedzi. Możesz opisać osobowość asystenta i poinformować go, jak formatować odpowiedzi.
strictness liczba całkowita False Skonfigurowana ścisłość filtrowania istotności wyszukiwania. Im większa surowość, większa precyzja, ale niższa kompletność odpowiedzi. Wartość domyślna to 3.
top_n_documents liczba całkowita False Skonfigurowano maksymalną liczbę dokumentów do funkcji dla skonfigurowanego zapytania. Wartość domyślna to 5.

Opcje uwierzytelniania klucza interfejsu API

Opcje uwierzytelniania Azure OpenAI na danych podczas korzystania z klucza interfejsu API.

Name Typ Required Description
key ciąg True Klucz interfejsu API do użycia do uwierzytelniania.
type ciąg True Musi mieć wartość api_key.

Źródło wektoryzacji nazw wdrożenia

Szczegóły źródła wektoryzacji, wykorzystywane przez Azure OpenAI On Your Data podczas stosowania wyszukiwania wektorowego. To źródło wektoryzacji opiera się na nazwie wdrożenia modelu wdrożenia wewnętrznego osadzenia w tym samym zasobu Azure OpenAI. To źródło wektoryzacji pozwala korzystać z wyszukiwania wektorowego bez klucza API Azure OpenAI i bez dostępu do publicznej sieci Azure OpenAI.

Name Typ Required Description
deployment_name ciąg True Nazwa modelu osadzania w tym samym zasobu Azure OpenAI.
type ciąg True Musi mieć wartość deployment_name.

Opcje mapowania pól

Ustawienia umożliwiające kontrolowanie sposobu przetwarzania pól.

Name Typ Required Description
content_fields string[] True Nazwy pól indeksu, które powinny być traktowane jako zawartość.
content_fields_separator ciąg False Wzorzec separatora, którego powinny używać pola zawartości. Wartość domyślna to \n.
filepath_field ciąg False Nazwa pola indeksu do użycia jako ścieżka pliku.
title_field ciąg False Nazwa pola indeksu, które ma być używane jako tytuł.
url_field ciąg False Nazwa pola indeksu, które ma być używane jako adres URL.

Examples

Prerequisites:

  • Konfiguruj przypisania ról od użytkownika do zasobu Azure OpenAI. Wymagana rola: Cognitive Services OpenAI User.
  • Zainstaluj interfejs wiersza polecenia Az i uruchom polecenie az login.
  • Zdefiniuj następujące zmienne środowiskowe: AzureOpenAIEndpoint, , , ChatCompletionsDeploymentNameIndexNameEnvironment, 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

Zainstaluj najnowsze pakiety openaipip , 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://ai.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))