Criando seu AI bot com docker
Neste artigo, vamos aprender como criar um bot de IA com Docker. O Docker é uma ferramenta de virtualização de aplicativos que permite empacotar e distribuir facilmente aplicativos em contêineres. Isso é útil para o desenvolvimento de um bot de IA, pois permite que o código do bot seja facilmente distribuído e executado em diferentes ambientes de forma consistente.
Para começar, vamos criar um novo projeto em um diretório de sua escolha. Em seguida, criaremos um arquivo Dockerfile, que é um arquivo de texto simples que contém as instruções para o Docker criar um contêiner para o seu bot de IA.
O primeiro passo é definir uma imagem de base para o contêiner. Isso pode ser qualquer imagem de sistema operacional, como Ubuntu ou Debian, que possua todas as bibliotecas e dependências necessárias para executar o seu código. Neste caso vamos usar uma imagem pronta com o Python3:
FROM python:3
Em seguida, precisamos instalar as dependências do seu projeto. Isso pode ser feito usando o gerenciador de pacotes do sistema operacional, como o apt-get no Ubuntu. Neste caso vamos instalar o pacote openAI:
RUN pip install openai
Agora, precisamos copiar o código do seu projeto para o contêiner. Isso pode ser feito usando o comando ADD, seguido pelo caminho para o seu código no host e o caminho para onde o código deve ser copiado no contêiner.
ADD code.py /
Por fim, precisamos definir um comando para ser executado quando o contêiner for iniciado. Isso pode ser feito usando o comando ENTRYPOINT, seguido pelo comando que deve ser executado.
ENTRYPOINT [ "python", "./code.py"]
Agora temos nosso arquivo dockerfile complete que seria:
FROM python:3
RUN pip install openai
ADD code.py /
ENTRYPOINT [ "python", "./code.py"]
Este seria um exemplo de código de python para acessar a API da OpenAI(o ficheiro code.py):
import os
import sys
import openai
openai.api_key = os.getenv("API_KEY")
cmd = ''.join(sys.argv[1:])
response = openai.Completion.create(
model="text-davinci-003",
prompt=cmd,
temperature=0.4,
max_tokens=200,
top_p=1.0,
frequency_penalty=0.0,
presence_penalty=0.0
)
print(response['choices'][0]['text'])
Com o Dockerfile criado, podemos construir o contêiner usando o comando “docker build”. Isso criará uma imagem do seu bot de IA que pode ser facilmente distribuída e executada em qualquer ambiente que possua o Docker instalado.
root@pop-os:~/openai# docker build -t luis/openai .
Sending build context to Docker daemon 5.12kB
Step 1/4 : FROM python:3
3: Pulling from library/python
f2f58072e9ed: Already exists
5c8cfbf51e6e: Already exists
aa3a609d1579: Already exists
094e7d9bb04e: Already exists
2cbfd734f382: Already exists
aa86ac293d0f: Already exists
4cffc9f44941: Already exists
ae2c75627c86: Already exists
2d2b74d2f0f7: Already exists
Digest: sha256:11560799e4311fd5abcca7ace13585756d7222ce5471162cd78c78a4ecaf62bd
Status: Downloaded newer image for python:3
.
.
.
Step 4/4 : ENTRYPOINT [ "python", "./code.py"]
---> Running in 99c8f4005359
Removing intermediate container 99c8f4005359
---> d482a8d913b4
Successfully built d482a8d913b4
Successfully tagged luis/openai:latest
Neste link pode criar a sua API KEY que será necessário para realizar o pedido a API:
Para executar o contêiner, basta usar o comando “docker run”. Isso iniciará o contêiner com o seu bot de IA e o ele irá responder suas questões.
Você deve substituir a variável API_KEY por sua API KEY gerada no site da OpenAI.
root@pop-os:~/openai# docker run -e "API_KEY=sk-...tq" luis/openai maior país do mundo?
O maior país do mundo é a Rússia, com uma área de 17.098.242 quilômetros quadrados.
Outro exemplo:
root@pop-os:~/openai# docker run -e "API_KEY=sk-...tq" luis/openai 10 casas decimais do número pi
3,1415926535
Lembre-se de que é necessário ter o Docker instalado e uma conta na OpenAI para seguir este tutorial. Se você ainda não possui uma conta na OpenAI, basta acessar o site e seguir as instruções para criar uma.
Photo by Kenny Eliason on Unsplash