Fonte de dados – Pinecone (versão prévia) (clássico)

Aplica-se somente a:Portal de fundimento (clássico). Este artigo não está disponível para o novo portal do Foundry. Saiba mais sobre o novo portal.

Note

Links neste artigo podem abrir conteúdo na nova documentação do Microsoft Foundry em vez da documentação da Foundry (clássica) que você está exibindo agora.

Important

Azure OpenAI Em Seus Dados está preterido e se aproximando da desativação.

Microsoft parou de integrar novos modelos para Azure OpenAI em seus dados. Esse recurso só dá suporte aos seguintes modelos:

  • GPT-4o (versões 2024-05-13, 2024-08-06 e 2024-11-20)
  • GPT-4o-mini (versão 2024-07-18)
  • GPT-4.1, GPT-4.1-mini e GPT-4.1-nano (versão 2025-04-14)

Once, os modelos GPT-4.1 se desativam, todos os Azure Os pontos de extremidade da API de Dados e os conectores de fonte de dados compatíveis param de funcionar.

Recomendamos que você migre Azure cargas de trabalho openai em seus dados para Foundry Agent Service com Foundry IQ para recuperar conteúdo e gerar respostas a base de seus dados. Para começar, consulte Conectar uma base de dados de conhecimento do IQ do Foundry.

As opções configuráveis do Pinecone ao usar o Azure OpenAI On Your Data. Essa fonte de dados tem suporte a partir da versão 2024-02-15-previewda API.

Name Tipo Required Description
parameters Parameters True Os parâmetros a serem usados ao configurar o Pinecone.
type cadeia True Deve ser pinecone.

Parameters

Name Tipo Required Description
environment cadeia True O nome do ambiente de Pinecone.
index_name cadeia True O nome do índice de banco de dados pinecone.
fields_mapping FieldsMappingOptions True Comportamento personalizado de mapeamento de campo a ser usado ao interagir com o índice de pesquisa.
authentication ApiKeyAuthenticationOptions True O método de autenticação a ser usado ao acessar a fonte de dados definida.
embedding_dependency DeploymentNameVectorizationSource True A dependência de inserção para pesquisa de vetor.
in_scope boolean False Se as consultas devem ser restritas ao uso de dados indexados. O padrão é True.
role_information cadeia False Forneça as instruções do modelo sobre como ele deve se comportar e qualquer contexto que ele deve referenciar ao gerar uma resposta. Você pode descrever a personalidade do assistente e informá-la como formatar respostas.
strictness inteiro False A rigidez configurada da filtragem de relevância da pesquisa. Quanto maior a rigidez, maior a precisão, mas menor a recuperação da resposta. O padrão é 3.
top_n_documents inteiro False O número superior configurado de documentos a serem apresentados para a consulta configurada. O padrão é 5.

Opções de autenticação de chave de API

As opções de autenticação para Azure OpenAI em seus dados ao usar uma chave de API.

Name Tipo Required Description
key cadeia True A chave de API a ser usada para autenticação.
type cadeia True Deve ser api_key.

Origem da vetorização do nome da implantação

Os detalhes da fonte de vetorização usada pelo Azure OpenAI On Your Data ao aplicar busca vetorial. Essa fonte de vetorização é baseada em um nome de implantação de modelo interno de embeddings no mesmo recurso do Azure OpenAI. Essa fonte de vetorização permite que você use busca vetorial sem a chave API do Azure OpenAI e sem acesso à rede pública do Azure OpenAI.

Name Tipo Required Description
deployment_name cadeia True O nome de implantação do modelo de embedding dentro do mesmo recurso Azure OpenAI.
type cadeia True Deve ser deployment_name.

Opções de mapeamento de campos

As configurações para controlar como os campos são processados.

Name Tipo Required Description
content_fields string[] True Os nomes dos campos de índice que devem ser tratados como conteúdo.
content_fields_separator cadeia False O padrão separador que os campos de conteúdo devem usar. O padrão é \n.
filepath_field cadeia False O nome do campo de índice a ser usado como um caminho de arquivo.
title_field cadeia False O nome do campo de índice a ser usado como um título.
url_field cadeia False O nome do campo de índice a ser usado como UMA URL.

Examples

Prerequisites:

  • Configure as atribuições de funções do usuário para o recurso Azure OpenAI. Função necessária: Cognitive Services OpenAI User.
  • Instalar a CLI do Az e executar az login.
  • Defina as seguintes variáveis de ambiente: AzureOpenAIEndpoint, ,EnvironmentChatCompletionsDeploymentName, , IndexName, . EmbeddingDeploymentNameKey
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export Environment=testenvironment
export Key=***
export IndexName=pinecone-test-index
export EmbeddingDeploymentName=ada

Instale os pacotes openaipip mais recentes. 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))