O OpenAI o1 oferece novas ferramentas para desenvolvedores, como uma API em Tempo Real para experiências conversacionais de baixa latência, suporte ao WebRTC para aplicações de voz, e um Ajuste Fino de Preferências que personaliza modelos conforme as preferências do usuário. Além disso, novos SDKs para Go e Java em beta facilitam a integração, melhorando a eficiência e flexibilidade no desenvolvimento de aplicações inovadoras com inteligência artificial.
O OpenAI o1 foi lançado com várias novidades empolgantes para desenvolvedores. Entre as principais inovações estão melhorias na API em tempo real e uma nova técnica de ajuste fino.
Essas atualizações visam facilitar a personalização e melhorar o desempenho, flexibilidade e a eficiência de custo para quem trabalha com IA.
OpenAI o1 na API
O OpenAI o1 é um modelo de raciocínio projetado para lidar com tarefas complexas que exigem múltiplos passos com alta precisão. Ele está sendo disponibilizado para desenvolvedores na camada de uso 5 da API.
O o1 é o sucessor do o1-preview, que já foi utilizado por desenvolvedores para criar aplicações que otimizam o suporte ao cliente, melhoram decisões na cadeia de suprimentos e preveem tendências financeiras complexas.
O o1 está pronto para produção e possui recursos-chave que permitem o uso em cenários reais, incluindo:
- Chamadas de função: Conecte o o1 a dados externos e APIs de forma simples.
- Saídas Estruturadas: Gere respostas que atendam de forma confiável ao seu esquema JSON personalizado.
- Mensagens do desenvolvedor: Especifique instruções ou contexto que o modelo deve seguir, como definir tom, estilo e outras orientações comportamentais.
- Capacidades de visão: Raciocine sobre imagens para desbloquear muitas mais aplicações em ciência, manufatura ou codificação, onde entradas visuais são importantes.
- Menor latência: O o1 usa em média 60% menos tokens de raciocínio do que o o1-preview para uma solicitação dada.
- Um novo parâmetro da API
reasoning_effort
permite que você controle quanto tempo o modelo pensa antes de responder.
O snapshot do o1 que estamos lançando hoje, o1-2024-12-17
, é uma nova versão pós-treinada do modelo que lançamos no ChatGPT há duas semanas. Ele melhora o comportamento do modelo com base no feedback recebido, enquanto mantém as capacidades de ponta que avaliamos em nosso Cartão de Sistema o1.
Estamos atualizando o o1 no ChatGPT para esta versão em breve. As avaliações que estamos compartilhando abaixo refletem o desempenho deste novo snapshot, garantindo que os desenvolvedores tenham benchmarks atualizados para esta versão.
Melhorias na API em Tempo Real
A API em Tempo Real permite que os desenvolvedores criem experiências conversacionais naturais e de baixa latência. É ideal para assistentes de voz, ferramentas de tradução ao vivo, tutores virtuais, sistemas interativos de suporte ao cliente, ou até mesmo seu próprio Santa.
Hoje, estamos lançando mudanças para atender a algumas das solicitações mais comuns dos desenvolvedores:
- Integração direta do WebRTC: Agora, você pode integrar facilmente a API em Tempo Real com o WebRTC, permitindo a construção de produtos de voz em tempo real que funcionam em diferentes plataformas.
- Redução de preços: O preço do áudio do GPT-4o foi reduzido em 60%, tornando-o mais acessível para os desenvolvedores. As taxas de áudio do GPT-4o mini também foram ajustadas para serem um décimo das taxas anteriores.
- Mais controle sobre as respostas: Os desenvolvedores agora têm mais controle sobre como as respostas são geradas e podem personalizar a interação com os usuários de maneira mais eficaz.
Essas melhorias visam tornar a API em Tempo Real mais poderosa e flexível, permitindo que os desenvolvedores criem aplicações inovadoras e responsivas que atendam às necessidades dos usuários em tempo real.
Suporte ao WebRTC
Estamos introduzindo o suporte ao WebRTC na API em Tempo Real. O WebRTC é um padrão aberto que facilita a construção e a escalabilidade de produtos de voz em tempo real em diversas plataformas, seja em aplicativos baseados em navegador, clientes móveis, dispositivos IoT ou configurações de servidor para servidor.
A integração do WebRTC foi projetada para permitir interações suaves e responsivas em condições do mundo real, mesmo com qualidade de rede variável. Ela gerencia a codificação de áudio, streaming, supressão de ruídos e controle de congestionamento, garantindo uma experiência de usuário de alta qualidade.
Com o WebRTC, você pode adicionar capacidades em tempo real com apenas algumas linhas de código JavaScript, tornando o desenvolvimento de aplicações de voz mais acessível e eficiente. Aqui está um exemplo de como configurar uma sessão em tempo real:
async function createRealtimeSession(localStream, remoteAudioEl, token) {\n const pc = new RTCPeerConnection();\n pc.ontrack = e => remoteAudioEl.srcObject = e.streams[0];\n pc.addTrack(localStream.getTracks()[0]);\n const offer = await pc.createOffer();\n await pc.setLocalDescription(offer);\n const headers = { Authorization: `Bearer ${token}`, 'Content-Type': 'application/sdp' };\n const opts = { method: 'POST', body: offer.sdp, headers };\n const resp = await fetch('https://api.openai.com/v1/realtime', opts);\n await pc.setRemoteDescription({ type: 'answer', sdp: await resp.text() });\n return pc;\n}
Esse código demonstra como estabelecer uma conexão de voz usando a API em Tempo Real e o WebRTC, permitindo que você crie aplicações interativas que se adaptam às necessidades dos usuários.
Para mais informações sobre nossa integração com o WebRTC, consulte a documentação da API.
Novos snapshots do GPT-4o e GPT-4o mini
Estamos lançando o gpt-4o-realtime-preview-2024-12-17 como parte da beta da API em Tempo Real, com qualidade de voz aprimorada, entrada mais confiável (especialmente para números ditados) e custos reduzidos.
Devido às melhorias em nossa eficiência, estamos reduzindo o preço do token de áudio em 60%, agora custando $40 por 1 milhão de tokens de entrada e $80 por 1 milhão de tokens de saída.
Os custos de entrada de áudio em cache foram reduzidos em 87,5%, para apenas $2,50 por 1 milhão de tokens de entrada.
Além disso, estamos trazendo o GPT-4o mini para a beta da API em Tempo Real como gpt-4o-mini-realtime-preview-2024-12-17
.
O GPT-4o mini é nosso modelo pequeno mais eficiente em termos de custo e oferece as mesmas ricas experiências de voz na API em Tempo Real que o GPT-4o.
O preço do áudio do GPT-4o mini é de $10 por 1 milhão de tokens de entrada e $20 por 1 milhão de tokens de saída.
Os tokens de texto são cobrados a $0,60 por 1 milhão de tokens de entrada e $2,40 por 1 milhão de tokens de saída.
Tanto os tokens de áudio quanto os de texto em cache custam $0,30 por 1 milhão de tokens.
Esses snapshots estão disponíveis na API em Tempo Real e também na API de Completação de Texto como gpt-4o-audio-preview-2024-12-17
e gpt-4o-mini-audio-preview-2024-12-17
.
Essas atualizações visam proporcionar aos desenvolvedores ferramentas mais poderosas e acessíveis para criar aplicações de voz e interativas que atendam às demandas do mercado atual.
Mais controle sobre as respostas
Estamos introduzindo uma série de novas funcionalidades na API em Tempo Real que proporcionam aos desenvolvedores um maior controle sobre as respostas geradas, facilitando a criação de experiências de voz excepcionais. Essas melhorias incluem:
- Respostas concorrentes fora da conversa padrão: Agora é possível executar tarefas em segundo plano, como moderação de conteúdo ou classificação, sem interromper a interação de voz do usuário.
- Contexto de entrada personalizado: Permite especificar quais itens da conversa devem ser incluídos como entrada para o modelo. Por exemplo, você pode executar uma verificação de moderação apenas na última fala do usuário ou reutilizar uma resposta anterior sem alterar permanentemente o estado da sessão.
- Tempos de resposta controlados: Utilize a Detecção de Atividade de Voz (VAD) do lado do servidor sem acionar automaticamente uma resposta. Isso permite coletar dados necessários, como detalhes da conta, e adicioná-los ao contexto do modelo antes de iniciar manualmente uma resposta de voz, oferecendo mais controle sobre o tempo e a precisão.
- Aumento do tempo máximo de sessão: O tempo máximo de sessão foi aumentado de 15 para 30 minutos, permitindo interações mais longas e complexas sem a necessidade de reiniciar a conversa.
Essas funcionalidades visam melhorar a experiência do usuário e permitir que os desenvolvedores criem aplicações mais sofisticadas e responsivas, adaptando-se melhor às necessidades dos usuários em tempo real.
Ajuste Fino de Preferências
A API de ajuste fino agora suporta o Ajuste Fino de Preferências, que facilita a personalização de modelos com base nas preferências de usuários e desenvolvedores. Essa nova técnica utiliza a Otimização Direta de Preferências (DPO) para comparar pares de respostas do modelo, ensinando-o a distinguir entre saídas preferidas e não preferidas.
O Ajuste Fino de Preferências é especialmente eficaz para tarefas subjetivas em que o tom, estilo e criatividade são importantes. Aqui estão algumas das principais diferenças entre o Ajuste Fino de Preferências e o Ajuste Fino Supervisionado:
Critério | Ajuste Fino Supervisionado (SFT) | Ajuste Fino de Preferências (PFT) |
---|---|---|
Objetivo | Incentivar o modelo a gerar saídas corretas replicando saídas rotuladas. | Otimizar o modelo para favorecer comportamentos desejados, reforçando respostas preferidas e reduzindo a probabilidade de respostas não preferidas. |
Dados de treinamento | Pares exatas de entrada e saída. | Pares de saídas preferidas e não preferidas, através de anotação humana, testes A/B ou geração de dados sintéticos. |
Casos de uso | Tarefas em que uma saída ideal é fácil de preparar, como formatação de código personalizado, e onde a correção estrita é necessária. | Efetivo para tarefas em que respostas “melhores” são subjetivas, como redação criativa ou sumarização. |
Estamos iniciando os testes do Ajuste Fino de Preferências com parceiros de confiança, que já observaram resultados promissores. Por exemplo, a Rogo AI está desenvolvendo um assistente de IA para analistas financeiros que descompõe consultas complexas em subconsultas. Usando seu benchmark especializado, o Rogo-Golden, eles descobriram que o Ajuste Fino de Preferências resolveu desafios enfrentados pelo Ajuste Fino Supervisionado, melhorando a precisão de 75% no modelo base para mais de 80%.
O Ajuste Fino de Preferências será lançado hoje para gpt-4o-2024-08-06
e estará disponível em breve para gpt-4o-mini-2024-07-18
. Ele será oferecido pelo mesmo preço por token treinado que o Ajuste Fino Supervisionado, com suporte para nossos modelos mais novos chegando no início do próximo ano. Para mais informações, visite nosso guia de ajuste fino na documentação da API.
SDKs de Go e Java em beta
Finalmente, estamos introduzindo dois novos SDKs oficiais para Go e Java em beta, além das nossas bibliotecas oficiais existentes para Python, Node.js e .NET. Nosso objetivo é tornar as APIs da OpenAI fáceis de usar, independentemente da linguagem de programação que você escolher.
O Go é uma linguagem estaticamente tipada, ideal para lidar com concorrência e construir APIs escaláveis e sistemas de backend. O SDK do OpenAI para Go facilita a interação com os modelos da OpenAI em seu código Go.
Por exemplo, você pode usar o SDK de Go para fazer chamadas de API e processar respostas de maneira eficiente:
client := openai.NewClient()\nctx := context.Background()\nprompt := \"Escreva um haiku sobre Golang.\"\n\ncompletion, err := client.Chat.Completions.New(\n ctx, \n openai.ChatCompletionNewParams{\n Messages: openai.F(\n []openai.ChatCompletionMessageParamUnion{\n openai.UserMessage(prompt),\n },\n ),\n Model: openai.F(openai.ChatModelGPT4o),\n },\n)
Da mesma forma, o Java tem sido um pilar do desenvolvimento de software empresarial, favorecido por seu sistema de tipos e pelo enorme ecossistema de bibliotecas de código aberto. O SDK do OpenAI para Java fornece objetos de solicitação e resposta tipados, além de utilitários úteis para gerenciar solicitações de API.
Um exemplo de uso do SDK de Java seria:
OpenAIClient client = OpenAIOkHttpClient.fromEnv();\n\nChatCompletionCreateParams params = ChatCompletionCreateParams\n .builder()\n .message(List.of(\n ChatCompletionMessageParam.ofChatCompletionUserMessageParam(\n ChatCompletionUserMessageParam\n .builder()\n .role(ChatCompletionUserMessageParam.Role.USER)\n .content(\n ChatCompletionUserMessageParam.Content.ofTextContent(\n \"Qual é a origem da mascote Duke do Java?\"\n )\n )\n .build()\n )\n ))\n .model(ChatModel.O1_PREVIEW)\n .build();\n\nChatCompletion chatCompletion = client.chat().completions().create(params);
Para mais informações sobre os SDKs de Go e Java, consulte a documentação do SDK de Go e a documentação do SDK de Java no GitHub.
Esses SDKs em beta visam facilitar a integração e o desenvolvimento de aplicações que utilizam os modelos da OpenAI, permitindo que mais desenvolvedores aproveitem o poder da inteligência artificial em seus projetos.
Conclusão
Estamos entusiasmados em ver o que você irá construir com essas atualizações — sejam novos aplicativos de voz, modelos ajustados ou aplicações que desafiam os limites do que é possível.
As melhorias no OpenAI o1, a introdução da API em Tempo Real e o suporte ao WebRTC oferecem ferramentas poderosas para desenvolvedores que buscam criar experiências inovadoras e eficientes.
Além disso, com o Ajuste Fino de Preferências e os novos SDKs de Go e Java, a personalização e a integração das APIs da OpenAI se tornam ainda mais acessíveis.
Para começar, explore os guias detalhados para o1, API em Tempo Real, integração do WebRTC e Ajuste Fino de Preferências na nossa documentação da API.
Se você tiver dúvidas, conecte-se com nossa equipe no Fórum de Desenvolvedores da OpenAI.
FAQ – Perguntas Frequentes sobre OpenAI o1 e Novas Ferramentas
O que é o OpenAI o1?
O OpenAI o1 é um modelo de raciocínio projetado para lidar com tarefas complexas que exigem múltiplos passos com alta precisão.
Quais são as principais melhorias na API em Tempo Real?
As melhorias incluem integração direta do WebRTC, redução de preços, e maior controle sobre as respostas geradas.
Como funciona o Ajuste Fino de Preferências?
O Ajuste Fino de Preferências utiliza a Otimização Direta de Preferências (DPO) para ensinar o modelo a distinguir entre saídas preferidas e não preferidas.
Quais linguagens de programação têm SDKs disponíveis?
Atualmente, temos SDKs disponíveis para Go e Java, além de bibliotecas para Python, Node.js e .NET.
Como posso acessar a documentação dos novos SDKs?
Você pode acessar a documentação do SDK de Go em GitHub [aqui](https://github.com/openai/openai-go?tab=readme-ov-file#openai-go-api-library) e do SDK de Java [aqui](https://github.com/openai/openai-java?tab=readme-ov-file#openai-java-api-library).
Onde posso fazer perguntas ou buscar suporte?
Você pode conectar-se com nossa equipe no Fórum de Desenvolvedores da OpenAI em [community.openai.com](https://community.openai.com/).
Fonte: https://openai.com/index/o1-and-new-tools-for-developers/