API da Cohere em Python: Um Guia Completo

Se você está começando a explorar o mundo da Inteligência Artificial (IA) e quer entender como criar assistentes poderosos utilizando a API da OpenAI, você está no lugar certo! Neste tutorial, vamos abordar o que são os Assistants da OpenAI, como utilizá-los e como eles podem simplificar o desenvolvimento de aplicações de IA. Vamos lá!
Os Assistants da OpenAI são uma funcionalidade recente, lançada no final de 2023, que permite criar assistentes de IA capazes de realizar uma variedade de tarefas. Diferente dos modelos de linguagem tradicionais, os Assistants vêm com ferramentas pré-criadas que podem ser utilizadas automaticamente, como o interpretador de código (Code Interpreter) e a obtenção de informações (Knowledge Retrieval).
Antes de começarmos a criar nossos Assistants, é importante entender a estrutura da documentação da API da OpenAI. A documentação é bem organizada e oferece um guia passo a passo para diversas funcionalidades.
Uma API (Interface de Programação de Aplicações) é um conjunto de regras que permite a comunicação entre diferentes softwares. No caso da OpenAI, a API permite que você envie um texto e receba uma resposta gerada pelo modelo, facilitando a integração de funcionalidades de IA em seus aplicativos.
Vamos começar criando um Assistant que funcione como um tutor de matemática. Para isso, utilizaremos a biblioteca da OpenAI em Python.
Primeiro, vamos importar as bibliotecas necessárias e configurar nosso cliente da OpenAI.
import openai
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())
client = openai.Client()
Agora, vamos criar um novo Assistant com uma instrução específica para atuar como tutor de matemática.
assistant = client.beta.assistants.create(
name="Math Tutor",
instructions="Você é um tutor pessoal de matemática. Escreva e execute códigos para responder perguntas de matemática.",
tools=[{"type": "code_interpreter"}],
model="gpt-4-turbo-preview",
)
Para interagir com o Assistant, precisamos criar uma Thread. As Threads armazenam o histórico de mensagens e facilitam a comunicação contínua.
thread = client.beta.threads.create()
Vamos adicionar uma mensagem à Thread com uma pergunta de matemática.
message = client.beta.threads.messages.create(
thread_id=thread.id,
role='user',
content='Se eu jogar um dado honesto 1000 vezes, qual é a probabilidade de eu obter exatamente 150 vezes o número 6? Resolva com um código'
)
Agora, vamos solicitar ao Assistant que rode a Thread.
run = client.beta.threads.runs.create(
thread_id=thread.id,
assistant_id=assistant.id,
instructions='O nome do usuário é Adriano Soares e ele é um usuário Premium.'
)
Para garantir que a Thread já tenha sido executada, utilizamos o seguinte trecho de código:
import time
while run.status in ['queued', 'in_progress', 'cancelling']:
time.sleep(1)
run = client.beta.threads.runs.retrieve(
thread_id=thread.id,
run_id=run.id
)
print(run.status) # 'completed'
Por fim, vamos verificar a resposta dada pelo modelo.
if run.status == 'completed':
mensagens = client.beta.threads.messages.list(
thread_id=thread.id
)
print(mensagens)
else:
print('Erro', run.status)
A resposta final será algo como:
A probabilidade de obter exatamente 150 vezes o número 6 ao lançar um dado honesto 1000 vezes é aproximadamente 0.0126, ou seja, cerca de 1.26%.
Podemos verificar todos os passos que o modelo percorreu até chegar à solução.
run_steps = client.beta.threads.runs.steps.list(
thread_id=thread.id,
run_id=run.id
)
for step in run_steps.data[::-1]:
print('\n=== Step:', step.step_details.type)
if step.step_details.type == 'tool_calls':
for tool_call in step.step_details.tool_calls:
print('-----')
print(tool_call.code_interpreter.input)
print('-----')
print('Result')
print(tool_call.code_interpreter.outputs[0].logs)
if step.step_details.type == 'message_creation':
message = client.beta.threads.messages.retrieve(
thread_id=thread.id,
message_id=step.step_details.message_creation.message_id
)
print(message.content[0].text.value)
Os Assistants com a API da OpenAI oferecem uma maneira poderosa e flexível de criar assistentes de IA capazes de realizar uma variedade de tarefas. Com ferramentas pré-construídas e a capacidade de armazenar o histórico de mensagens, eles simplificam o desenvolvimento de aplicações de IA. Esperamos que este tutorial tenha ajudado você a entender como criar e utilizar Assistants com a API da OpenAI. Boa sorte em sua jornada com a Inteligência Artificial!
Se você gostou deste tutorial e quer aprender mais sobre IA e programação, não deixe de conferir nossos outros artigos e cursos na Asimov Academy!
Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:
Comentários
30xp