Início Rápido: Começar a gerar texto usando a API de conclusões herdadas
Use este artigo para começar a fazer suas primeiras chamadas ao OpenAI do Azure.
Pré-requisitos
- Uma assinatura do Azure – Crie uma gratuitamente.
- Um recurso do OpenAI do Azure com um modelo implantado. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Vá para o Estúdio OpenAI do Azure
Navegue até o Estúdio OpenAI do Azure em https://oai.azure.com/ e entre com as credenciais que têm acesso ao recurso do OpenAI do Azure. Durante o fluxo de trabalho de entrada, selecione o diretório apropriado, a assinatura do Azure e o recurso OpenAI do Azure.
Navegue na página de aterrissagem do Azure OpenAI Studio para explorar exemplos de conclusão de prompt, gerenciar suas implantações e modelos e encontrar recursos de aprendizagem, como documentação e fóruns da comunidade.
Playground
Comece a explorar as funcionalidades do OpenAI do Azure com uma abordagem sem código por meio do Playground GPT-3. É apenas uma caixa de texto em que você pode enviar um prompt para gerar uma conclusão. Nesta página, você pode iterar e experimentar as funcionalidades rapidamente.
Você pode selecionar uma implantação e escolher entre alguns exemplos pré-carregados para começar. Se o recurso não tiver uma implantação, selecione Criar uma implantação e siga as instruções fornecidas pelo assistente. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Você pode experimentar as configurações, como temperatura e texto de pré-resposta, para melhorar o desempenho da tarefa. Você pode ler mais sobre cada parâmetro na API REST.
- Selecionar o botão Gerar enviará o texto inserido para a API de conclusões e transmitirá os resultados de volta à caixa de texto.
- Selecione o botão Desfazer para desfazer a chamada de geração anterior.
- Selecione o botão Regenerar para completar uma ação de desfazer e uma chamada de geração juntas.
O OpenAI do Azure também faz a moderação de conteúdo nas entradas de prompt e nas saídas geradas. Os prompts ou respostas poderão ser filtrados se conteúdo prejudicial for detectado. Para obter mais informações, consulte o artigo filtro de conteúdo.
No playground Preenchimentos, você também pode visualizar amostras de código Python e curl pré-preenchidas de acordo com as configurações selecionadas. Basta selecionar Exibir código ao lado da lista suspensa de exemplos. Você pode escrever um aplicativo para concluir a mesma tarefa com o SDK do OpenAI Python, curl ou outro cliente da API REST.
Experimentar resumo de texto
Para usar o OpenAI do Azure para resumo de texto no Playground Preenchimentos, siga estas etapas:
Entre no Estúdio do OpenAI do Azure.
Selecione a assinatura e o recurso OpenAI para trabalhar.
Selecione o playground Preenchimentos na página de aterrissagem.
Selecione sua implantação na lista suspensa Implantações. Se o recurso não tiver uma implantação, selecione Criar uma implantação e revisite esta etapa.
Digite um prompt para o modelo.
Selecione
Generate
. O OpenAI do Azure tentará capturar o contexto do texto e reformulá-lo de forma sucinta. Você deve obter um resultado semelhante ao seguinte texto:
A precisão da resposta pode variar por modelo. O modelo baseado em gpt-35-turbo-instruct
é adequado para esse tipo de resumo, embora, em geral, recomendemos usar a API de preenchimentos de chat alternativa, a menos que você tenha um caso de uso específico que seja particularmente adequado para a API de preenchimentos.
Limpar os recursos
Caso queria limpar e remover um recurso do OpenAI do Azure, é possível excluir o recurso ou o grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.
Próximas etapas
- Saiba mais sobre como gerar a melhor conclusão em nosso Guia de instruções sobre conclusões.
- Para mais exemplos, confira o repositório do GitHub de amostras do OpenAI do Azure.
Código-fonte | Pacote (NuGet) | Amostras
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Versão atual do .NET Core
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo-instruct
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Criar um aplicativo .NET Core
Em uma janela de console (como cmd, PowerShell ou Bash), use o comando dotnet new
para criar um novo aplicativo do console com o nome azure-openai-quickstart
. Este comando cria um projeto "Olá, Mundo" simples com um único arquivo de origem C#: Program.cs.
dotnet new console -n azure-openai-quickstart
Altere o diretório para a pasta do aplicativo recém-criado. É possível criar o aplicativo com:
dotnet build
A saída de compilação não deve conter nenhum aviso ou erro.
...
Build succeeded.
0 Warning(s)
0 Error(s)
...
Instalar a biblioteca de clientes do OpenAI .NET com:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.17
Observação
A API de conclusões só está disponível na versão 1.0.0-beta.17
e anterior da biblioteca de clientes Azure.AI.OpenAI
. Para a versão mais recente 2.0.0
e superior do Azure.AI.OpenAI
, a abordagem recomendada para gerar conclusões é usar a API de conclusões de chat.
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Criar um aplicativo de exemplo
No diretório do projeto, abra o arquivo program.cs e substitua pelo seguinte código:
using Azure;
using Azure.AI.OpenAI;
using static System.Environment;
string endpoint = GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string key = GetEnvironmentVariable("AZURE_OPENAI_API_KEY");
var client = new OpenAIClient(
new Uri(endpoint),
new AzureKeyCredential(key));
CompletionsOptions completionsOptions = new()
{
DeploymentName = "gpt-35-turbo-instruct",
Prompts = { "When was Microsoft founded?" },
};
Response<Completions> completionsResponse = client.GetCompletions(completionsOptions);
string completion = completionsResponse.Value.Choices[0].Text;
Console.WriteLine($"Chatbot: {completion}");
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
dotnet run program.cs
Saída
Chatbot:
Microsoft was founded on April 4, 1975.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, primeiro você deve excluir todos os modelos implantados.
Próximas etapas
- Para mais exemplos, confira o repositório do GitHub de amostras do OpenAI do Azure
Código-fonte | Pacote (Go)| Amostras
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Go 1.21.0 ou superior instalado localmente.
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo-instuct
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Criar um aplicativo de exemplo
Crie um novo arquivo chamado completions.go. Copie o código a seguir no arquivo completions.go.
package main
import (
"context"
"fmt"
"os"
"github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai"
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
)
func main() {
azureOpenAIKey := os.Getenv("AZURE_OPENAI_API_KEY")
modelDeploymentID := "gpt-35-turbo-instruct"
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
if azureOpenAIKey == "" || modelDeploymentID == "" || azureOpenAIEndpoint == "" {
fmt.Fprintf(os.Stderr, "Skipping example, environment variables missing\n")
return
}
keyCredential := azcore.NewKeyCredential(azureOpenAIKey)
client, err := azopenai.NewClientWithKeyCredential(azureOpenAIEndpoint, keyCredential, nil)
if err != nil {
// TODO: handle error
}
resp, err := client.GetCompletions(context.TODO(), azopenai.CompletionsOptions{
Prompt: []string{"What is Azure OpenAI, in 20 words or less"},
MaxTokens: to.Ptr(int32(2048)),
Temperature: to.Ptr(float32(0.0)),
DeploymentName: &modelDeploymentID,
}, nil)
if err != nil {
// TODO: handle error
}
for _, choice := range resp.Choices {
fmt.Fprintf(os.Stderr, "Result: %s\n", *choice.Text)
}
}
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Abra um prompt de comando e execute:
go mod init completions.go
Próxima execução:
go mod tidy
go run completions.go
Saída
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximas etapas
- Para obter mais exemplos, confira o repositório do GitHub de Exemplos do OpenAI do Azure
Código-fonte | Artefato (Maven) | Exemplos
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- A versão atual do JDK (Java Development Kit)
- A ferramenta de build Gradle ou outro gerenciador de dependência.
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo-instruct
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Criar um aplicativo Java
Criar um novo projeto Gradle.
Em uma janela de console (como cmd, PowerShell ou Bash), crie um novo diretório para seu aplicativo e navegue até ele.
mkdir myapp && cd myapp
Execute o comando gradle init
em seu diretório de trabalho. Esse comando criará arquivos de build essenciais para o Gradle, incluindo o build.gradle.kts, que é usado no runtime para criar e configurar seu aplicativo.
gradle init --type basic
Quando solicitado a escolher uma DSL, escolha Kotlin.
Instalar o SDK do Java
Este início rápido usa o gerenciador de dependência do Gradle. Você pode encontrar a biblioteca de clientes e informações para outros gerenciadores de dependência no Repositório Central do Maven.
Localize o build.gradle.kts e abra-o com seu IDE ou editor de texto preferencial. Depois copie nessa configuração de build a seguir. Esta configuração define o projeto como um aplicativo Java cujo ponto de entrada é a classe OpenAIQuickstart. Isso importa a biblioteca da Visão de IA do Azure.
plugins {
java
application
}
application {
mainClass.set("GetCompletionsSample")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-openai", version = "1.0.0-beta.3")
implementation("org.slf4j:slf4j-simple:1.7.9")
}
Criar um aplicativo de exemplo
Criar um arquivo Java.
Em seu diretório de trabalho, execute o comando a seguir para criar uma pasta de origem do projeto:
mkdir -p src/main/java
Navegue até a nova pasta e crie um arquivo chamado BingVisualSearchSample.java.
Abra GetCompletionsSample.java no seu editor ou IDE de preferência e cole o código a seguir.
package com.azure.ai.openai.usage; import com.azure.ai.openai.OpenAIClient; import com.azure.ai.openai.OpenAIClientBuilder; import com.azure.ai.openai.models.Choice; import com.azure.ai.openai.models.Completions; import com.azure.ai.openai.models.CompletionsOptions; import com.azure.ai.openai.models.CompletionsUsage; import com.azure.core.credential.AzureKeyCredential; import java.util.ArrayList; import java.util.List; public class GetCompletionsSample { public static void main(String[] args) { String azureOpenaiKey = System.getenv("AZURE_OPENAI_API_KEY");; String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT");; String deploymentOrModelId = "gpt-35-turbo-instruct"; OpenAIClient client = new OpenAIClientBuilder() .endpoint(endpoint) .credential(new AzureKeyCredential(azureOpenaiKey)) .buildClient(); List<String> prompt = new ArrayList<>(); prompt.add("When was Microsoft founded?"); Completions completions = client.getCompletions(deploymentOrModelId, new CompletionsOptions(prompt)); System.out.printf("Model ID=%s is created at %s.%n", completions.getId(), completions.getCreatedAt()); for (Choice choice : completions.getChoices()) { System.out.printf("Index: %d, Text: %s.%n", choice.getIndex(), choice.getText()); } CompletionsUsage usage = completions.getUsage(); System.out.printf("Usage: number of prompt token is %d, " + "number of completion token is %d, and number of total tokens in request and response is %d.%n", usage.getPromptTokens(), usage.getCompletionTokens(), usage.getTotalTokens()); } }
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Navegue de volta para a pasta raiz do projeto e compile o aplicativo com:
gradle build
Em seguida, execute-o com o comando
gradle run
:gradle run
Saída
Model ID=cmpl-7JZRbWuEuHX8ozzG3BXC2v37q90mL is created at 1684898835.
Index: 0, Text:
Microsoft was founded on April 4, 1975..
Usage: number of prompt token is 5, number of completion token is 11, and number of total tokens in request and response is 16.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximas etapas
- Para obter mais exemplos, confira o repositório do GitHub de Exemplos do OpenAI do Azure
Código-fonte | Artefatos (Maven) | Amostra
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- A versão atual do JDK (Java Development Kit)
- A ferramenta CLI do Spring Boot
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, veja Autenticar solicitações para serviços de IA do Azure.
Observação
A IA do Spring define o nome do modelo como padrão para gpt-35-turbo
. Só é necessário fornecer o valor SPRING_AI_AZURE_OPENAI_MODEL
se você implantou um modelo com um nome diferente.
export SPRING_AI_AZURE_OPENAI_API_KEY="REPLACE_WITH_YOUR_KEY_VALUE_HERE"
export SPRING_AI_AZURE_OPENAI_ENDPOINT="REPLACE_WITH_YOUR_ENDPOINT_HERE"
export SPRING_AI_AZURE_OPENAI_MODEL="REPLACE_WITH_YOUR_MODEL_NAME_HERE"
Criar um aplicativo Spring
Crie um projeto Spring.
Em uma janela do Bash, crie um diretório para seu aplicativo e navegue até ele.
mkdir ai-completion-demo && cd ai-completion-demo
Execute o comando spring init
em seu diretório de trabalho. Esse comando criará uma estrutura de diretório padrão para o projeto Spring, incluindo o arquivo de origem da classe Java principal e o arquivo pom.xml usado para gerenciar projetos baseados em Maven.
spring init -a ai-completion-demo -n AICompletion --force --build maven -x
Os arquivos e as pastas geradas se assemelham à seguinte estrutura:
ai-completion-demo/
|-- pom.xml
|-- mvn
|-- mvn.cmd
|-- HELP.md
|-- src/
|-- main/
| |-- resources/
| | |-- application.properties
| |-- java/
| |-- com/
| |-- example/
| |-- aicompletiondemo/
| |-- AiCompletionApplication.java
|-- test/
|-- java/
|-- com/
|-- example/
|-- aicompletiondemo/
|-- AiCompletionApplicationTests.java
Editar o aplicativo Spring
Edite o arquivo pom.xml.
Na raiz do diretório do projeto, abra o arquivo pom.xml no seu editor ou IDE preferido e substitua o arquivo pelo seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.2.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>ai-completion-demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>AICompletion</name> <description>Demo project for Spring Boot</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.experimental.ai</groupId> <artifactId>spring-ai-azure-openai-spring-boot-starter</artifactId> <version>0.7.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <repositories> <repository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <releases> <enabled>false</enabled> </releases> </repository> </repositories> </project>
Na pasta src/main/java/com/example/aicompletiondemo, abra AiCompletionApplication.java no seu editor ou IDE preferido e cole o seguinte código:
package com.example.aicompletiondemo; import java.util.Collections; import java.util.List; import org.springframework.ai.client.AiClient; import org.springframework.ai.prompt.Prompt; import org.springframework.ai.prompt.messages.Message; import org.springframework.ai.prompt.messages.MessageType; import org.springframework.ai.prompt.messages.UserMessage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class AiCompletionApplication implements CommandLineRunner { private static final String ROLE_INFO_KEY = "role"; @Autowired private AiClient aiClient; public static void main(String[] args) { SpringApplication.run(AiCompletionApplication.class, args); } @Override public void run(String... args) throws Exception { System.out.println(String.format("Sending completion prompt to AI service. One moment please...\r\n")); final List<Message> msgs = Collections.singletonList(new UserMessage("When was Microsoft founded?")); final var resps = aiClient.generate(new Prompt(msgs)); System.out.println(String.format("Prompt created %d generated response(s).", resps.getGenerations().size())); resps.getGenerations().stream() .forEach(gen -> { final var role = gen.getInfo().getOrDefault(ROLE_INFO_KEY, MessageType.ASSISTANT.getValue()); System.out.println(String.format("Generated respose from \"%s\": %s", role, gen.getText())); }); } }
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Navegue de volta para a pasta raiz do projeto e execute o aplicativo usando o seguinte comando:
./mvnw spring-boot:run
Saída
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v3.1.5)
2023-11-07T12:47:46.126-06:00 INFO 98687 --- [ main] c.e.a.AiCompletionApplication : No active profile set, falling back to 1 default profile: "default"
2023-11-07T12:47:46.823-06:00 INFO 98687 --- [ main] c.e.a.AiCompletionApplication : Started AiCompletionApplication in 0.925 seconds (process running for 1.238)
Sending completion prompt to AI service. One moment please...
Prompt created 1 generated response(s).
Generated respose from "assistant": Microsoft was founded on April 4, 1975.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximas etapas
Para obter mais exemplos, confira o repositório do GitHub de Exemplos do OpenAI do Azure
Código-fonte | Pacote (npm) | Amostras
Observação
Este artigo foi atualizado para usar o pacote npm do OpenAI mais recente que agora dá suporte total ao OpenAI do Azure. Caso você esteja procurando exemplos de código para o SDK do JavaScript do OpenAI do Azure herdado, eles ainda estão 1available neste repositório.
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Versões LTS do Node.js
- A CLI do Azure usada para autenticação sem senha em um ambiente de desenvolvimento local, crie o contexto necessário entrando com a CLI do Azure.
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo-instruct
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Em uma janela de console (como cmd, PowerShell ou Bash), crie um novo diretório para seu aplicativo e navegue até ele.
Instalar a biblioteca de clientes
Instale os pacotes necessários para JavaScript com npm no contexto do seu novo diretório:
npm install openai @azure/identity
O arquivo package.json do seu aplicativo será atualizado com as dependências.
Criar um aplicativo de exemplo
Abra um prompt de comando onde você deseja criar o projeto e crie um arquivo chamado Completion.js. Copie o código a seguir no arquivo ChatCompletion.js.
const { AzureOpenAI } = require("openai");
const {
DefaultAzureCredential,
getBearerTokenProvider
} = require("@azure/identity");
// You will need to set these environment variables or edit the following values
const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
const apiVersion = "2024-04-01-preview";
const deployment = "gpt-35-turbo-instruct"; //The deployment name for your completions API model. The instruct model is the only new model that supports the legacy API.
// keyless authentication
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);
const prompt = ["When was Microsoft founded?"];
async function main() {
console.log("== Get completions Sample ==");
const client = new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment });
const result = await client.completions.create({ prompt, model: deployment, max_tokens: 128 });
for (const choice of result.choices) {
console.log(choice.text);
}
}
main().catch((err) => {
console.error("Error occurred:", err);
});
module.exports = { main };
Execute o script com o seguinte comando:
node.exe Completion.js
Saída
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Observação
Se você receber o erro: Ocorreu um erro: OpenAIError: Os argumentos apiKey
e azureADTokenProvider
são mutuamente exclusivos; apenas um pode ser passado de cada vez. Talvez seja necessário remover uma variável de ambiente pré-existente para a chave de API do seu sistema. Mesmo que o exemplo de código do Microsoft Entra ID não faça referência explícita à variável de ambiente da chave de API, se houver uma presente no sistema que executa esse exemplo, esse erro ainda será gerado.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximas etapas
- Visão geral do Azure OpenAI
- Para obter mais exemplos, confira o repositório do GitHub de Exemplos do OpenAI do Azure
Código-fonte | Pacote (npm) | Amostras
Observação
Este artigo foi atualizado para usar o pacote npm do OpenAI mais recente que agora dá suporte total ao OpenAI do Azure. Caso você esteja procurando exemplos de código para o SDK do JavaScript do OpenAI do Azure herdado, eles ainda estão 1available neste repositório.
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Versões LTS do Node.js
- TypeScript
- A CLI do Azure usada para autenticação sem senha em um ambiente de desenvolvimento local, crie o contexto necessário entrando com a CLI do Azure.
- Um recurso do Serviço OpenAI do Azure com o modelo implantado
gpt-35-turbo-instruct
. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, um ponto de extremidade e uma chave serão necessários.
Nome da variável | Valor |
---|---|
ENDPOINT |
O ponto de extremidade de serviço pode ser encontrado na seção Chaves e Ponto de extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade na página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
Acesse o seu recurso no portal do Azure. A seção Chaves e Ponto de Extremidade pode ser encontrada na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Em uma janela de console (como cmd, PowerShell ou Bash), crie um novo diretório para seu aplicativo e navegue até ele.
Instalar a biblioteca de clientes
Instale os pacotes necessários para JavaScript com npm no contexto do seu novo diretório:
npm install openai @azure/identity
O arquivo package.json do seu aplicativo será atualizado com as dependências.
Criar um aplicativo de exemplo
Abra um prompt de comando onde você deseja criar o projeto e crie um arquivo chamado Completion.ts. Copie o código a seguir no arquivo ChatCompletion.ts.
import {
DefaultAzureCredential,
getBearerTokenProvider
} from "@azure/identity";
import { AzureOpenAI } from "openai";
import { type Completion } from "openai/resources/index";
// You will need to set these environment variables or edit the following values
const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
// Required Azure OpenAI deployment name and API version
const apiVersion = "2024-08-01-preview";
const deploymentName = "gpt-35-turbo-instruct";
// keyless authentication
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);
// Chat prompt and max tokens
const prompt = ["When was Microsoft founded?"];
const maxTokens = 128;
function getClient(): AzureOpenAI {
return new AzureOpenAI({
endpoint,
azureADTokenProvider,
apiVersion,
deployment: deploymentName,
});
}
async function getCompletion(
client: AzureOpenAI,
prompt: string[],
max_tokens: number
): Promise<Completion> {
return client.completions.create({
prompt,
model: "",
max_tokens,
});
}
async function printChoices(completion: Completion): Promise<void> {
for (const choice of completion.choices) {
console.log(choice.text);
}
}
export async function main() {
console.log("== Get completions Sample ==");
const client = getClient();
const completion = await getCompletion(client, prompt, maxTokens);
await printChoices(completion);
}
main().catch((err) => {
console.error("Error occurred:", err);
});
Crie o script com o seguinte comando:
tsc
Execute o script com o seguinte comando:
node.exe Completion.js
Saída
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Observação
Se você receber o erro: Ocorreu um erro: OpenAIError: Os argumentos apiKey
e azureADTokenProvider
são mutuamente exclusivos; apenas um pode ser passado de cada vez. Talvez seja necessário remover uma variável de ambiente pré-existente para a chave de API do seu sistema. Mesmo que o exemplo de código do Microsoft Entra ID não faça referência explícita à variável de ambiente da chave de API, se houver uma presente no sistema que executa esse exemplo, esse erro ainda será gerado.
Limpar os recursos
Caso queria limpar e remover um recurso OpenAI do Azure, é possível excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximas etapas
- Visão geral do Azure OpenAI
- Para obter mais exemplos, confira o repositório do GitHub de Exemplos do OpenAI do Azure
Código-fonte da biblioteca | Pacote (PyPi) |
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Python 3.8 ou versão posterior
- As seguintes bibliotecas do Python: sistema operacional, solicitações, JSON
- Um recurso do Serviço OpenAI do Azure com um modelo
gpt-35-turbo-instruct
implantado. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Instalar a biblioteca de clientes do OpenAI Python com:
pip install openai
Observação
Essa biblioteca é mantida pelo OpenAI. Consulte o histórico de lançamentos para acompanhar as atualizações mais recentes na biblioteca.
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com sucesso no Serviço OpenAI do Azure, você precisará do seguinte:
Nome da variável | Valor |
---|---|
ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você também pode encontrar o ponto de extremidade por meio da página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
DEPLOYMENT-NAME |
Esse valor corresponderá ao nome personalizado escolhido para sua implantação ao implantar um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure ou por meio da página Implantações no Estúdio de IA do Azure. |
Acesse o seu recurso no portal do Azure. As Chaves e Ponto de Extremidade podem ser encontrados na seção Gerenciamento de Recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Criar um novo aplicativo Python
Criar um arquivo Python chamado quickstart.py. Depois, abra-o no editor ou IDE de sua preferência.
Substitua o conteúdo do arquivo quickstart.py pelo código a seguir. Modifique o código para adicionar sua chave, seu ponto de extremidade e o nome da sua implantação:
import os
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-02-01",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
deployment_name='REPLACE_WITH_YOUR_DEPLOYMENT_NAME' #This will correspond to the custom name you chose for your deployment when you deployed a model. Use a gpt-35-turbo-instruct deployment.
# Send a completion call to generate an answer
print('Sending a test completion job')
start_phrase = 'Write a tagline for an ice cream shop. '
response = client.completions.create(model=deployment_name, prompt=start_phrase, max_tokens=10)
print(start_phrase+response.choices[0].text)
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Execute o aplicativo com o comando
python
no seu arquivo de início rápido:python quickstart.py
Saída
A saída incluirá o texto de resposta após o prompt Write a tagline for an ice cream shop.
. O OpenAI do Azure retornou The coldest ice cream in town!
neste exemplo.
Sending a test completion job
Write a tagline for an ice cream shop. The coldest ice cream in town!
Execute o código mais algumas vezes para ver quais outros tipos de respostas você obtém, pois a resposta nem sempre será a mesma.
Compreensão dos resultados
Como nosso exemplo de Write a tagline for an ice cream shop.
fornece pouco contexto, é normal que o modelo nem sempre retorne os resultados esperados. Você poderá ajustar o número máximo de tokens se a resposta parecer inesperada ou truncada.
O OpenAI do Azure também faz a moderação de conteúdo nas entradas de prompt e nas saídas geradas. Os prompts ou as respostas poderão ser filtrados se for detectado conteúdo prejudicial. Para obter mais informações, consulte o artigo filtro de conteúdo.
Limpar os recursos
Caso queria limpar e remover um recurso do OpenAI do Azure, é possível excluir o recurso ou o grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.
Próximas etapas
- Saiba mais sobre como gerar a melhor conclusão em nosso Guia de instruções sobre conclusões.
- Para mais exemplos, confira o repositório do GitHub de amostras do OpenAI do Azure.
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Python 3.8 ou versão posterior
- As seguintes bibliotecas do Python: sistema operacional, solicitações, JSON
- Um recurso do OpenAI do Azure com um modelo implantado. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Configuração
Recuperar chave e ponto de extremidade
Para fazer uma chamada com sucesso no OpenAI do Azure, você precisará ter o seguinte:
Nome da variável | Valor |
---|---|
ENDPOINT |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Como alternativa, você também pode encontrar o ponto de extremidade por meio da página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
DEPLOYMENT-NAME |
Esse valor corresponderá ao nome personalizado escolhido para sua implantação ao implantar um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações no portal do Azure ou na página Implantações no Estúdio de IA do Azure. |
Acesse o seu recurso no portal do Azure. O Ponto de extremidade e as Chaves podem ser encontrados na seção Gerenciamento de recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, confira Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
API REST
Em um shell Bash, execute o comando a seguir. Você precisará substituir gpt-35-turbo-instruct
pelo nome de implantação escolhido ao implantar o modelo gpt-35-turbo-instruct
. Inserir o nome do modelo resultará em um erro, a menos que você escolha um nome de implantação que seja idêntico ao nome do modelo subjacente.
curl $AZURE_OPENAI_ENDPOINT/openai/deployments/gpt-35-turbo-instruct/completions?api-version=2024-02-01 \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-d "{\"prompt\": \"Once upon a time\"}"
O formato da sua primeira linha do comando com um ponto de extremidade de exemplo apareceria da seguinte forma curl https://docs-test-001.openai.azure.com/openai/deployments/{YOUR-DEPLOYMENT_NAME_HERE}/completions?api-version=2024-02-01 \
. Se você encontrar um erro, verifique novamente se não há uma duplicação do /
na separação entre seu ponto de extremidade e /openai/deployments
.
Se quiser executar esse comando em um prompt de comando normal do Windows, você precisará alterar o texto para remover o \
e as quebras de linha.
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Saída
A saída da API de conclusões será conforme a seguir.
{
"id": "ID of your call",
"object": "text_completion",
"created": 1675444965,
"model": "gpt-35-turbo-instruct",
"choices": [
{
"text": " there lived in a little village a woman who was known as the meanest",
"index": 0,
"finish_reason": "length",
"logprobs": null
}
],
"usage": {
"completion_tokens": 16,
"prompt_tokens": 3,
"total_tokens": 19
}
}
O Serviço OpenAI do Azure também executa a moderação de conteúdo nas entradas de prompt e nas saídas geradas. Os prompts ou respostas poderão ser filtrados se conteúdo prejudicial for detectado. Para obter mais informações, consulte o artigo filtro de conteúdo.
Limpar os recursos
Caso queria limpar e remover um recurso do OpenAI do Azure, é possível excluir o recurso ou o grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.
Próximas etapas
- Saiba mais sobre como gerar a melhor conclusão em nosso Guia de instruções sobre conclusões.
- Para mais exemplos, confira o repositório do GitHub de amostras do OpenAI do Azure.
Pré-requisitos
- Uma assinatura do Azure – crie uma gratuitamente
- Você pode usar a versão mais recente, o PowerShell 7 ou o Windows PowerShell 5.1.
- Um recurso do Serviço OpenAI do Azure com um modelo implantado. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.
Recuperar chave e ponto de extremidade
Para efetuar uma chamada com êxito no Serviço OpenAI do Azure, será preciso o seguinte:
Nome da variável | Valor |
---|---|
ENDPOINT |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Como alternativa, você também pode encontrar o ponto de extremidade por meio da página Implantações no Estúdio de IA do Azure. Um ponto de extremidade de exemplo é: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Esse valor pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar o recurso no portal do Azure. Você pode usar KEY1 ou KEY2 . |
DEPLOYMENT-NAME |
Esse valor corresponderá ao nome personalizado escolhido para sua implantação ao implantar um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações no portal do Azure ou na página Implantações no Estúdio de IA do Azure. |
Acesse o seu recurso no portal do Azure. O Ponto de extremidade e as Chaves podem ser encontrados na seção Gerenciamento de recursos. Copie o ponto de extremidade e as chave de acesso, pois você precisará de ambos para autenticar suas chamadas à API. Você pode usar KEY1
ou KEY2
. Ter sempre duas chaves permite girar e regenerar chaves com segurança, sem causar interrupção de serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e ponto de extremidade.
Importante
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre a segurança dos serviços de IA, veja Autenticar solicitações para serviços de IA do Azure.
$Env:AZURE_OPENAI_API_KEY = 'YOUR_KEY_VALUE'
$Env:AZURE_OPENAI_ENDPOINT = 'YOUR_ENDPOINT'
Criar um novo script do PowerShell
Criar um novo arquivo do PowerShell denominado quickstart.ps1. Depois, abra-o no editor ou IDE de sua preferência.
Substitua o conteúdo de quickstart.ps1 pelo código a seguir. Modifique o código para adicionar sua chave, seu ponto de extremidade e o nome da sua implantação:
# Azure OpenAI metadata variables $openai = @{ api_key = $Env:AZURE_OPENAI_API_KEY api_base = $Env:AZURE_OPENAI_ENDPOINT # your endpoint should look like the following https://YOUR_RESOURCE_NAME.openai.azure.com/ api_version = '2024-02-01' # this may change in the future name = 'YOUR-DEPLOYMENT-NAME-HERE' #This will correspond to the custom name you chose for your deployment when you deployed a model. } # Completion text $prompt = 'Once upon a time...' # Header for authentication $headers = [ordered]@{ 'api-key' = $openai.api_key } # Adjust these values to fine-tune completions $body = [ordered]@{ prompt = $prompt max_tokens = 10 temperature = 2 top_p = 0.5 } | ConvertTo-Json # Send a completion call to generate an answer $url = "$($openai.api_base)/openai/deployments/$($openai.name)/completions?api-version=$($openai.api_version)" $response = Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Post -ContentType 'application/json' return "$prompt`n$($response.choices[0].text)"
Importante
Para produção, use um modo seguro de armazenar e acessar suas credenciais, como o Gerenciamento de Segredo do PowerShell com o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo segurança dos serviços de IA do Azure.
Execute o script usando o PowerShell:
./quickstart.ps1
Saída
A saída incluirá o texto de resposta após o prompt Once upon a time
. O OpenAI do Azure retornou There was a world beyond the mist...where a
neste exemplo.
Once upon a time...
There was a world beyond the mist...where a
Execute o código mais algumas vezes para ver quais outros tipos de respostas você obtém, pois a resposta nem sempre será a mesma.
Compreensão dos resultados
Como nosso exemplo de Once upon a time...
fornece pouco contexto, é normal que o modelo nem sempre retorne os resultados esperados. Você poderá ajustar o número máximo de tokens se a resposta parecer inesperada ou truncada.
O OpenAI do Azure também faz a moderação de conteúdo nas entradas de prompt e nas saídas geradas. Os prompts ou respostas poderão ser filtrados se conteúdo prejudicial for detectado. Para obter mais informações, consulte o artigo filtro de conteúdo.
Limpar os recursos
Caso queria limpar e remover um recurso do OpenAI do Azure, é possível excluir o recurso ou o grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.
Próximas etapas
- Saiba mais sobre como gerar a melhor conclusão em nosso Guia de instruções sobre conclusões.
- Para mais exemplos, confira o repositório do GitHub de amostras do OpenAI do Azure.