Источник данных — Pinecone (превью) (классика)

Применяется только к:Портал Foundry (классический). Эта статья недоступна для нового портала Foundry. Дополнительные сведения о новом портале.

Note

Ссылки в этой статье могут открывать содержимое в новой документации Microsoft Foundry вместо документации по Foundry (классической) сейчас.

Important

Azure OpenAI On Your Data устарел и приближается к выходу из эксплуатации. Служба будет прекращена 14 октября 2026 г.

Microsoft прекратила адаптацию новых моделей в Azure OpenAI On Your Data. Эта функция поддерживает только следующие модели:

  • GPT-4o (версии 2024-05-13, 2024-08-06 и 2024-11-20)
  • GPT-4o-mini (версия 2024-07-18)

Рекомендуем перенести Azure OpenAI On Your Data в Foundry Agent Service с Foundry IQ чтобы получать контент и получать обоснованные ответы из ваших данных. Чтобы начать, смотрите Connect a Foundry IQ базу знаний.

Настраиваемые опции Pinecone при использовании Azure OpenAI на ваших данных. Этот источник данных поддерживается начиная с версии 2024-02-15-previewAPI.

Имя. Тип Обязательный Описание
parameters Параметры True Параметры, которые следует использовать при настройке Pinecone.
type string True Должно быть pinecone.

Parameters

Имя. Тип Обязательный Описание
environment string True Экологическое название Pine Cone.
index_name string True Название индекса базы данных Pinecone.
fields_mapping FieldsMappingOptions True Персонализированное поведение при отображении полей при взаимодействии с индексом поиска.
authentication ApiKeyAuthenticationOptions True Метод аутентификации при доступе к определённому источнику данных.
embedding_dependency DeploymentNameVectorizationSource True Зависимость от вложения векторного поиска.
in_scope boolean Неправда Следует ли ограничивать запросы использованием индексированных данных. По умолчанию .True
role_information string Неправда Дайте модели инструкции о том, как она должна вести себя и какой контекст должна ссылаться при генерации ответа. Вы можете описать характер ассистента и объяснить, как правильно оформлять ответы.
strictness integer Неправда Настроенная строгость фильтрации релевантности поиска. Чем выше строгость, тем выше точность, но меньше запоминания ответа. По умолчанию .3
top_n_documents integer Неправда Настроенное максимальное количество документов для настроенного запроса. По умолчанию .5

Опции аутентификации ключей API

Опции аутентификации для Azure OpenAI на ваших данных при использовании ключа API.

Имя. Тип Обязательный Описание
key string True Ключ API для аутентификации.
type string True Должно быть api_key.

Источник векторизации имени развертывания

Детали источника векторизации, используемого Azure OpenAI On Your Data при применении векторного поиска. Этот источник векторизации основан на названии внутренней модели вложения в том же ресурсе Azure OpenAI. Этот источник векторизации позволяет использовать векторный поиск без API-ключа Azure OpenAI и без доступа к публичной сети Azure OpenAI.

Имя. Тип Обязательный Описание
deployment_name string True Имя развертывания модели встраивания внутри того же ресурса Azure OpenAI.
type string True Должно быть deployment_name.

Опции отображения полей

Настройки для управления обработкой полей.

Имя. Тип Обязательный Описание
content_fields string[] True Имена индексных полей, которые должны рассматриваться как содержимое.
content_fields_separator string Неправда Шаблон разделителя, который должны использовать поля содержания. По умолчанию .\n
filepath_field string Неправда Название индексного поля для использования в качестве пути к файлу.
title_field string Неправда Название индексного поля для заголовка.
url_field string Неправда Название индексного поля для использования в качестве URL.

Примеры

Prerequisites:

  • Настройте назначение ролей от пользователя к ресурсу Azure OpenAI. Обязательная роль: Cognitive Services OpenAI User.
  • Установите Az CLI и запустите az login.
  • Определим следующие переменные среды: AzureOpenAIEndpoint, ChatCompletionsDeploymentName, ,EnvironmentIndexNameKeyEmbeddingDeploymentName , .
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export Environment=testenvironment
export Key=***
export IndexName=pinecone-test-index
export EmbeddingDeploymentName=ada

Установите последние PIP-пакеты 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://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))