Rozmowa z modelem przy użyciu własnych danych

Ukończone

Narzędzie RAG z usługą Azure OpenAI można używać we własnych danych w usłudze Azure AI Studio z placem zabaw czatu lub przy użyciu interfejsu API.

Ponieważ usługa RAG z usługą Azure OpenAI na danych zawiera wyniki wyszukiwania w indeksie w wierszu polecenia, ważne jest, aby zrozumieć, jak ma to wpływ na przydział tokenu. Każde wywołanie modelu obejmuje tokeny komunikatu systemowego, monit użytkownika, historię konwersacji, pobrane dokumenty wyszukiwania, monity wewnętrzne i odpowiedź modelu.

Na przykład komunikat systemowy jest przydatnym odwołaniem do instrukcji dotyczących modelu i jest dołączony do każdego wywołania. Chociaż nie ma limitu tokenu dla komunikatu systemowego, w przypadku używania własnych danych komunikat systemowy zostaje obcięty, jeśli przekroczy limit tokenu modelu (który różni się w zależności od modelu, od 400 do 4000 tokenów). Odpowiedź z modelu jest również ograniczona w przypadku używania własnych danych to 1500 tokenów.

Ze względu na te ograniczenia tokenu zaleca się ograniczenie zarówno długości pytania, jak i długości historii konwersacji w wywołaniu. Monitowanie technik inżynieryjnych, takich jak podzielenie zadania i łańcuch monitowania myśli, może pomóc modelowi skuteczniej reagować.

Korzystanie z interfejsu API

Korzystając z interfejsu API z własnymi danymi, musisz określić źródło danych, w którym są przechowywane dane. Każde wywołanie wymaga uwzględnienia elementu , keyi indexName dla zasobu wyszukiwania sztucznej endpointinteligencji.

Treść żądania będzie podobna do poniższego kodu 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?"
        }
    ]
}

Wywołanie podczas korzystania z własnych danych musi być wysyłane do innego punktu końcowego niż jest używane podczas wywoływania modelu podstawowego, który obejmuje extensions. Połączenie zostanie wysłane do adresu URL podobnego do poniższego.

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

Żądanie będzie również musiało zawierać elementy Content-Type i api-key.