File size: 1,672 Bytes
4340b50
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
"""
Data Scientist.: Dr. Eddy Giusepe Chirinos Isidro

Crie um chatbot de IA com tecnologia ChatGPT
============================================
Como podemos usar a OpenAI ChatGPT para responder mensagens? 
Podemos simplesmente chamar a API OpenAI na função callback.

Observe que neste exemplo, adicionamos à função async para 
permitir multitarefa colaborativa em um único thread e permitir 
que tarefas de IO ocorram em segundo plano. Isso garante que nosso 
aplicativo funcione perfeitamente enquanto aguarda as respostas da API OpenAI. 
Async permite a execução simultânea, permitindo-nos realizar outras tarefas 
enquanto esperamos e garantindo uma aplicação responsiva.

Executando este script
----------------------

$ panel serve 2_Building_a_ChatGPT-powered_AI_ChatBot.py 
"""
import openai
import panel as pn

pn.extension()

# Substitua sua chave de API OpenAI:
import openai
import os
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv()) # read local .env file
openai.api_key  = os.environ['OPENAI_API_KEY']


async def callback(contents: str, user: str, instance: pn.chat.ChatInterface):
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{"role": "user", "content": contents}],
        stream=True,
        temperature=0.0,
    )
    message = ""
    for chunk in response:
        message += chunk["choices"][0]["delta"].get("content", "")
        yield message

chat_interface = pn.chat.ChatInterface(callback=callback, callback_user="ChatGPT")
chat_interface.send("Envie uma mensagem para obter uma resposta do ChatGPT!", user="System", respond=False)
chat_interface.servable()