A chamada de funções permite-lhe criar aplicações e agentes baseados no Gemini que podem interagir com informações e serviços em tempo real, como bases de dados, sistemas de gestão das relações com clientes e repositórios de documentos. Isto melhora a capacidade da sua aplicação de fornecer respostas relevantes e contextuais.
Com o ajuste fino supervisionado, pode usar o seu próprio conjunto de dados de ajuste para melhorar a precisão geral das respostas baseadas na chamada de funções da sua aplicação.
Formato do conjunto de dados de ajuste
O fileUri
para o conjunto de dados de ajuste fino pode ser o URI de um ficheiro num contentor do Cloud Storage ou um URL HTTP ou HTTPS disponível publicamente.
Para ver o exemplo de formato genérico, consulte o exemplo de conjunto de dados para o Gemini.
As secções seguintes apresentam exemplos de conjuntos de dados de chamadas de funções para utilização na criação de uma tarefa de otimização para chamadas de funções.
Ajustar a chamada de função para gerar texto
Segue-se um exemplo de um conjunto de dados para a otimização da chamada de funções para gerar uma única resposta de texto.
{
"system_instruction": {
"role": "system",
"parts": [
{
"text": "You are an assistant that helps users find the best product for them."
}
]
},
"contents": [
{
"role": "user",
"parts": [
{
"text": "Do you have the White Pixel 8 Pro 128GB in stock in the US?"
}
]
},
{
"role": "model",
"parts": [
{
"functionCall": {
"name": "get_product_sku",
"args": {
"product_name": "Pixel 8 Pro 128GB"
}
}
}
]
}
],
"tools": [
{
"functionDeclarations": [
{
"name": "get_product_sku",
"description": "Get the available inventory for a Google products, e.g: Pixel phones, Pixel Watches, Google Home etc",
"parameters": {
"type": "OBJECT",
"properties": {
"product_name": {
"type": "STRING",
"description": "Product name",
"enum": [
"Pixel 8 Pro 128GB",
"Pixel 8 Pro 256GB",
"Pixel 8 Pro 512GB",
"Pixel 8 Pro 1TB"
]
}
}
}
},
{
"name": "get_store_location",
"description": "Get the location of the closest store",
"parameters": {
"type": "OBJECT",
"properties": {
"location": {
"type": "STRING",
"description": "Location"
}
}
}
}
]
}
]
}
Ajustar a Chamada de funções para suportar uma sessão de chat
Segue-se um exemplo de um conjunto de dados para otimizar a chamada de funções de modo a suportar uma sessão de chat.
{
"system_instruction": {
"role": "system",
"parts": [
{
"text": "You are an assistant that helps users find the best product for them."
}
]
},
"contents": [
{
"role": "user",
"parts": [
{
"text": "Do you have the Porcelain Pixel 8 Pro 128GB in stock in the US?"
}
]
},
{
"role": "model",
"parts": [
{
"functionCall": {
"name": "get_product_sku",
"args": {
"product_name": "Pixel 8 Pro 128GB"
}
}
}
]
},
{
"parts": [
{
"functionResponse": {
"name": "get_product_sku",
"response": {
"output": "True"
}
}
}
]
},
{
"role": "model",
"parts": [
{
"text": "Yes, we have the Porcelain Pixel 8 Pro 128GB in stock in the US."
}
]
}
],
"tools": [
{
"functionDeclarations": [
{
"name": "get_product_sku",
"description": "Get the available inventory for a Google products, e.g: Pixel phones, Pixel Watches, Google Home etc",
"parameters": {
"type": "OBJECT",
"properties": {
"product_name": {
"type": "STRING",
"description": "Product name",
"enum": [
"Pixel 8 Pro 128GB",
"Pixel 8 Pro 256GB",
"Pixel 8 Pro 512GB",
"Pixel 8 Pro 1TB"
]
}
}
}
},
{
"name": "get_store_location",
"description": "Get the location of the closest store",
"parameters": {
"type": "OBJECT",
"properties": {
"location": {
"type": "STRING",
"description": "Location"
}
}
}
}
]
}
]
}
Ajustar as chamadas de funções paralelas
Segue-se um exemplo de um conjunto de dados para a otimização da chamada de funções paralelas.
{
"system_instruction": {
"role": "system",
"parts": [
{
"text": "You are an assistant that helps users find the best product for them."
}
]
},
"contents": [
{
"role": "user",
"parts": [
{
"text": "Where is the closest Google Store to Mountain View, CA that has Pixel 8 Pro 128GB in stock?"
}
]
},
{
"role": "model",
"parts": [
{
"functionCall": {
"name": "get_product_sku",
"args": {
"product_name": "Pixel 8 Pro 128GB"
}
}
},
{
"functionCall": {
"name": "get_store_location",
"args": {
"location": "Mountain View, CA"
}
}
}
]
}
],
"tools": [
{
"functionDeclarations": [
{
"name": "get_product_sku",
"description": "Get the available inventory for a Google products, e.g: Pixel phones, Pixel Watches, Google Home etc",
"parameters": {
"type": "OBJECT",
"properties": {
"product_name": {
"type": "STRING",
"description": "Product name",
"enum": [
"Pixel 8 Pro 128GB",
"Pixel 8 Pro 256GB",
"Pixel 8 Pro 512GB",
"Pixel 8 Pro 1TB"
]
}
}
}
},
{
"name": "get_store_location",
"description": "Get the location of the closest store",
"parameters": {
"type": "OBJECT",
"properties": {
"location": {
"type": "STRING",
"description": "Location"
}
}
}
}
]
}
]
}
O que se segue?
- Para saber como criar uma tarefa de ajuste e como testar o modelo ajustado, consulte o artigo Ajuste os modelos Gemini através do ajuste fino supervisionado.
- Para saber mais sobre a otimização do modelo Gemini, consulte o artigo Introdução à otimização.
- Para saber mais sobre a chamada de funções, consulte o artigo Introdução à chamada de funções.