Skip to content

Latest commit

 

History

History
149 lines (105 loc) · 7.23 KB

functions-bindings-openai-assistantquery-input.md

File metadata and controls

149 lines (105 loc) · 7.23 KB
titledescriptionms.topicms.customms.collectionms.datezone_pivot_groups
Azure OpenAI assistant query input binding for Azure Functions
Learn how to use the Azure OpenAI assistant query input binding to access Azure OpenAI Assistants APIs during function execution in Azure Functions.
reference
build-2024
devx-track-extended-java
devx-track-js
devx-track-python
devx-track-ts
ce-skilling-ai-copilot
01/07/2025
programming-languages-set-functions

Azure OpenAI assistant query input binding for Azure Functions

[!INCLUDE preview-support]

The Azure OpenAI assistant query input binding allows you to integrate Assistants API queries into your code executions.

For information on setup and configuration details of the Azure OpenAI extension, see Azure OpenAI extensions for Azure Functions. To learn more about Azure OpenAI assistants, see Azure OpenAI Assistants API.

[!INCLUDE functions-support-notes-samples-openai]

Example

::: zone pivot="programming-language-csharp"
This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response.

:::code language="csharp" source="~/functions-openai-extension/samples/assistant/csharp-ooproc/AssistantApis.cs" range="74-83":::

::: zone-end
::: zone pivot="programming-language-java"

This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response.

:::code language="java" source="~/functions-openai-extension/samples/assistant/java/src/main/java/com/azfs/AssistantApis.java" range="63-78":::

::: zone-end
::: zone pivot="programming-language-javascript,programming-language-typescript" This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response. ::: zone-end
::: zone pivot="programming-language-javascript"

:::code language="javascript" source="~/functions-openai-extension/samples/assistant/javascript/src/functions/assistantApis.js" range="6-7,63-79":::

::: zone-end
::: zone pivot="programming-language-typescript"

This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response.

:::code language="typescript" source="~/functions-openai-extension/samples/assistant/typescript/src/functions/assistantApis.ts" range="6-7,63-79":::

::: zone-end
::: zone pivot="programming-language-powershell"

This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response.

Here's the function.json file for Get Chat State:

:::code language="json" source="~/functions-openai-extension/samples/assistant/powershell/GetChatState/function.json" :::

For more information about function.json file properties, see the Configuration section.

:::code language="powershell" source="~/functions-openai-extension/samples/assistant/powershell/GetChatState/run.ps1" :::

::: zone-end
::: zone pivot="programming-language-python"
This example demonstrates the creation process, where the HTTP GET function that queries the conversation history of the assistant chat bot. The response to the prompt is returned in the HTTP response.

:::code language="python" source="~/functions-openai-extension/samples/assistant/python/assistant_apis.py" range="37-41":::

::: zone-end

::: zone pivot="programming-language-csharp"

Attributes

Apply the AssistantQuery attribute to define an assistant query input binding, which supports these parameters:

ParameterDescription
IdGets the ID of the assistant to query.
TimeStampUtcOptional. Gets or sets the timestamp of the earliest message in the chat history to fetch. The timestamp should be in ISO 8601 format - for example, 2023-08-01T00:00:00Z.

::: zone-end ::: zone pivot="programming-language-java"

Annotations

The assistantQuery annotation enables you to define an assistant query input binding, which supports these parameters:

ElementDescription
nameGets or sets the name of the input binding.
idGets the ID of the assistant to query.
timeStampUtcOptional. Gets or sets the timestamp of the earliest message in the chat history to fetch. The timestamp should be in ISO 8601 format - for example, 2023-08-01T00:00:00Z.

::: zone-end
::: zone pivot="programming-language-python"

Decorators

During the preview, define the input binding as a generic_input_binding binding of type assistantQuery, which supports these parameters:

ParameterDescription
arg_nameThe name of the variable that represents the binding parameter.
idGets the ID of the assistant to query.
time_stamp_utcOptional. Gets or sets the timestamp of the earliest message in the chat history to fetch. The timestamp should be in ISO 8601 format - for example, 2023-08-01T00:00:00Z.

::: zone-end ::: zone pivot="programming-language-powershell"

Configuration

The binding supports these configuration properties that you set in the function.json file.

PropertyDescription
typeMust be assistantQuery.
directionMust be in.
nameThe name of the input binding.
idGets the ID of the assistant to query.
timeStampUtcOptional. Gets or sets the timestamp of the earliest message in the chat history to fetch. The timestamp should be in ISO 8601 format - for example, 2023-08-01T00:00:00Z.

::: zone-end
::: zone pivot="programming-language-javascript,programming-language-typescript"

Configuration

The binding supports these properties, which are defined in your code:

PropertyDescription
idGets the ID of the assistant to query.
timeStampUtcOptional. Gets or sets the timestamp of the earliest message in the chat history to fetch. The timestamp should be in ISO 8601 format - for example, 2023-08-01T00:00:00Z.

::: zone-end

Usage

See the Example section for complete examples.

Related content

close