Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Azure İşlevleri için Azure OpenAI uzantısı şu anda önizleme aşamasındadır.
Azure OpenAI yardımcısı sorgu giriş bağlaması, Yardımcılar API sorgularını kod yürütmelerinizle tümleştirmenize olanak tanır.
Azure OpenAI uzantısının kurulum ve yapılandırma ayrıntıları hakkında bilgi için bkz. Azure İşlevleri için Azure OpenAI uzantıları. Azure OpenAI yardımcıları hakkında daha fazla bilgi edinmek için bkz . Azure OpenAI Yardımcıları API'si.
Not
Başvurular ve örnekler yalnızca Node.js v4 modeli için sağlanır.
Not
Başvurular ve örnekler yalnızca Python v2 modeli için sağlanır.
Not
Her iki C# işlem modeli de destekleniyor olsa da yalnızca yalıtılmış çalışan modeli örnekleri sağlanır.
Örnek
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
/// <summary>
/// HTTP GET function that queries the conversation history of the assistant chat bot.
/// </summary>
[Function(nameof(GetChatState))]
public static IActionResult GetChatState(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "assistants/{assistantId}")] HttpRequestData req,
string assistantId,
[AssistantQueryInput("{assistantId}", TimestampUtc = "{Query.timestampUTC}", ChatStorageConnectionSetting = DefaultChatStorageConnectionSetting, CollectionName = DefaultCollectionName)] AssistantState state)
{
return new OkObjectResult(state);
}
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
/*
* HTTP GET function that queries the conversation history of the assistant chat bot.
*/
@FunctionName("GetChatState")
public HttpResponseMessage getChatState(
@HttpTrigger(
name = "req",
methods = {HttpMethod.GET},
authLevel = AuthorizationLevel.ANONYMOUS,
route = "assistants/{assistantId}")
HttpRequestMessage<Optional<String>> request,
@BindingName("assistantId") String assistantId,
@AssistantQuery(name = "AssistantState", id = "{assistantId}", timestampUtc = "{Query.timestampUTC}", chatStorageConnectionSetting = DEFAULT_CHATSTORAGE, collectionName = DEFAULT_COLLECTION) AssistantState state,
final ExecutionContext context) {
return request.createResponseBuilder(HttpStatus.OK)
.header("Content-Type", "application/json")
.body(state)
.build();
}
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
const { app, input, output } = require("@azure/functions");
const chatBotQueryInput = input.generic({
type: 'assistantQuery',
id: '{assistantId}',
timestampUtc: '{Query.timestampUTC}',
chatStorageConnectionSetting: CHAT_STORAGE_CONNECTION_SETTING,
collectionName: COLLECTION_NAME
})
app.http('GetChatState', {
methods: ['GET'],
route: 'assistants/{assistantId}',
authLevel: 'anonymous',
extraInputs: [chatBotQueryInput],
handler: async (_, context) => {
const state = context.extraInputs.get(chatBotQueryInput)
return { status: 200, jsonBody: state }
}
})
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
import { HttpRequest, InvocationContext, app, input, output } from "@azure/functions"
const chatBotQueryInput = input.generic({
type: 'assistantQuery',
id: '{assistantId}',
timestampUtc: '{Query.timestampUTC}',
chatStorageConnectionSetting: CHAT_STORAGE_CONNECTION_SETTING,
collectionName: COLLECTION_NAME
})
app.http('GetChatState', {
methods: ['GET'],
route: 'assistants/{assistantId}',
authLevel: 'anonymous',
extraInputs: [chatBotQueryInput],
handler: async (_, context) => {
const state: any = context.extraInputs.get(chatBotQueryInput)
return { status: 200, jsonBody: state }
}
})
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
Sohbet Durumunu Al için function.json dosyası aşağıdadır:
{
"bindings": [
{
"authLevel": "function",
"type": "httpTrigger",
"direction": "in",
"name": "Request",
"route": "assistants/{assistantId}",
"methods": [
"get"
]
},
{
"type": "http",
"direction": "out",
"name": "Response"
},
{
"name": "State",
"type": "assistantQuery",
"direction": "in",
"dataType": "string",
"id": "{assistantId}",
"timestampUtc": "{Query.timestampUTC}",
"chatStorageConnectionSetting": "AzureWebJobsStorage",
"collectionName": "ChatState"
}
]
}
function.json dosya özellikleri hakkında daha fazla bilgi için Yapılandırma bölümüne bakın.
using namespace System.Net
param($Request, $TriggerMetadata, $State)
Push-OutputBinding -Name Response -Value ([HttpResponseContext]@{
StatusCode = [HttpStatusCode]::OK
Body = $State
Headers = @{
"Content-Type" = "application/json"
}
})
Bu örnekte, yardımcı sohbet botunun konuşma geçmişini sorgulayan HTTP GET işlevinin bulunduğu oluşturma işlemi gösterilmektedir. İstem yanıtı HTTP yanıtında döndürülür.
@apis.function_name("GetChatState")
@apis.route(route="assistants/{assistantId}", methods=["GET"])
@apis.assistant_query_input(
arg_name="state",
id="{assistantId}",
timestamp_utc="{Query.timestampUTC}",
chat_storage_connection_setting=DEFAULT_CHAT_STORAGE_SETTING,
collection_name=DEFAULT_CHAT_COLLECTION_NAME,
)
def get_chat_state(req: func.HttpRequest, state: str) -> func.HttpResponse:
return func.HttpResponse(state, status_code=200, mimetype="application/json")
Özellikler
AssistantQuery Şu parametreleri destekleyen bir yardımcı sorgu giriş bağlaması tanımlamak için özniteliğini uygulayın:
| Parametre | Açıklama |
|---|---|
| Kimlik | Sorgu için yardımcının kimliğini alır. |
| Zaman DamgasıUtc | İsteğe bağlı. Sohbet geçmişindeki en eski iletinin zaman damgasını alacak veya alacak şekilde ayarlar. Zaman damgası ISO 8601 biçiminde olmalıdır; örneğin, 2023-08-01T00:00:00Z. |
Ek Açıklamalar
Ek assistantQuery açıklama, şu parametreleri destekleyen bir yardımcı sorgu giriş bağlaması tanımlamanızı sağlar:
| Öğe | Açıklama |
|---|---|
| ad | Giriş bağlamasının adını alır veya ayarlar. |
| ID | Sorgu için yardımcının kimliğini alır. |
| timeStampUtc | İsteğe bağlı. Sohbet geçmişindeki en eski iletinin zaman damgasını alacak veya alacak şekilde ayarlar. Zaman damgası ISO 8601 biçiminde olmalıdır; örneğin, 2023-08-01T00:00:00Z. |
Dekoratörler
Önizleme sırasında, giriş bağlamasını şu parametreleri destekleyen türündeki generic_input_bindingbir assistantQuery bağlama olarak tanımlayın:
| Parametre | Açıklama |
|---|---|
| arg_name | Bağlama parametresini temsil eden değişkenin adı. |
| ID | Sorgu için yardımcının kimliğini alır. |
| time_stamp_utc | İsteğe bağlı. Sohbet geçmişindeki en eski iletinin zaman damgasını alacak veya alacak şekilde ayarlar. Zaman damgası ISO 8601 biçiminde olmalıdır; örneğin, 2023-08-01T00:00:00Z. |
Yapılandırma
Bağlama, function.json dosyasında ayarladığınız bu yapılandırma özelliklerini destekler.
| Özellik | Açıklama |
|---|---|
| türü | olmalıdır assistantQuery. |
| yön | olmalıdır in. |
| ad | Giriş bağlamasının adı. |
| ID | Sorgu için yardımcının kimliğini alır. |
| timeStampUtc | İsteğe bağlı. Sohbet geçmişindeki en eski iletinin zaman damgasını alacak veya alacak şekilde ayarlar. Zaman damgası ISO 8601 biçiminde olmalıdır; örneğin, 2023-08-01T00:00:00Z. |
Yapılandırma
Bağlama, kodunuzda tanımlanan şu özellikleri destekler:
| Özellik | Açıklama |
|---|---|
| ID | Sorgu için yardımcının kimliğini alır. |
| timeStampUtc | İsteğe bağlı. Sohbet geçmişindeki en eski iletinin zaman damgasını alacak veya alacak şekilde ayarlar. Zaman damgası ISO 8601 biçiminde olmalıdır; örneğin, 2023-08-01T00:00:00Z. |
Kullanım
Tam örnekler için Örnek bölümüne bakın.