Converse com seu modelo usando seus próprios dados

Concluído

O RAG com o Azure OpenAI em seus próprios dados pode ser usado no Azure AI Studio com o playground de bate-papo ou usando a API.

Como o RAG com o Azure OpenAI em seus dados inclui resultados de pesquisa em seu índice no prompt, é importante entender como isso afeta sua alocação de token. Cada chamada para o modelo inclui tokens para a mensagem do sistema, o prompt do usuário, o histórico de conversas, documentos de pesquisa recuperados, prompts internos e a resposta do modelo.

A mensagem do sistema, por exemplo, é uma referência útil para instruções para o modelo e está incluída em todas as chamadas. Embora não haja limite de token para a mensagem do sistema, ao usar seus próprios dados, a mensagem do sistema fica truncada se exceder o limite de token do modelo (que varia por modelo, de 400 a 4000 tokens). A resposta do modelo também é limitada ao usar seus próprios dados é de 1500 tokens.

Devido a essas limitações de token, é recomendável que você limite a duração da pergunta e a duração do histórico de conversas em sua chamada. Técnicas de engenharia rápidas, como a quebra da tarefa e a cadeia de pensamento podem ajudar o modelo a responder de forma mais eficaz.

Usando a API

Usando a API com seus próprios dados, você precisa especificar a fonte de dados onde seus dados são armazenados. Com cada chamada, você precisa incluir o , keye indexName para o endpointseu recurso AI Search.

O corpo do seu pedido será semelhante ao seguinte JSON.

{
    "dataSources": [
        {
            "type": "AzureCognitiveSearch",
            "parameters": {
                "endpoint": "<your_search_endpoint>",
                "key": "<your_search_endpoint>",
                "indexName": "<your_search_index>"
            }
        }
    ],
    "messages":[
        {
            "role": "system", 
            "content": "You are a helpful assistant assisting users with travel recommendations."
        },
        {
            "role": "user", 
            "content": "I want to go to New York. Where should I stay?"
        }
    ]
}

A chamada ao usar seus próprios dados precisa ser enviada para um ponto de extremidade diferente do usado ao chamar um modelo base, que inclui extensions. A sua chamada será enviada para um URL semelhante ao seguinte.

<your_azure_openai_resource>/openai/deployments/<deployment_name>/chat/completions?api-version=<version>

O pedido terá também de incluir o Content-Type e api-key.