0
respostas

[Dúvida] Analise de codigo

Boa tarde galera, estou estudando IA aqui pela alura e teve um desafio da aula que eu completei mas achei meio estranho como ficou o codigo, alguem ai poderia me informar se ele esta bom ou se esta esquisito ?
Tive que utilizar esse OS e outras chamadas pq eu salvei a chave no powesell mesmo pra nao ter que ficar mostrando ela.

Crar um arquivo txt a partir de uma lista de perguntas vindas de uma lista em python

Ler as perguntas desse arquivo .txt e salvalas em uma lista python

Obter resposas de um LLM para cada uma.

Salvar os resultados em um novo arquivo .csv

Ler o arquivo .csv usando Pandas

import os
from dotenv import load_dotenv
import pandas as pd
from groq import Groq

lista_de_perguntas = [
"Do que e composta a agua? respostas curtas ",
"Qual a materia prima do ferro? respostas curtas",
"Com quantos anos pode tirar carta de motorista no basil? respostas curtas",
"Quantos planetas tem no sistema solar? respostas curtas",
"Qual o planeta mais longe da terra? respostas curtas",
"Qual o maior animal que vive no mar? respostas curtas",
"Qual maior arvore do mundo? respostas curtas",
"Qual a estrela mais proxima do sol? respostas curtas",
"Quais sao os ingredientes pra fazer um bolo de chocolate? respostas curtas",
"Quantos litros de agua uma pessoa deve tomar por dia? respostas curtas",
"Qual maior animal da terra ? respostas curtas"
]

with open("pergunta.txt", "w", encoding="utf-8") as arquivo:
for item in lista_de_perguntas:
arquivo.write(item + "\n") # Ecreve cada item e pula linha

with open("pergunta.txt", "r", encoding="utf-8") as arquivo:
lista_lida = [linha.strip() for linha in arquivo.readlines()]
print(lista_lida)

load_dotenv() #Carrega as variavies do arquivo .env

respostas = []

for pergunta in lista_lida:
api_key = os.environ.get("GROQ_API_KEY")
client = Groq(api_key=api_key)
completion = client.chat.completions.create(
model="openai/gpt-oss-20b",
messages=[
{
"role": "user",
"content": pergunta
}
],
temperature=1, #Conceito de IA que define quao criativo vai ser. valor 0 e o menos criativo possivel e 2 o mais criativo possivel
max_completion_tokens=8192,
top_p=1,
reasoning_effort="medium",
stream=False,
stop=None
)

resposta = completion.choices[0].message.content
respostas.append(resposta)
print(f"Pergunta: {pergunta}\nResposta: {resposta}\n---")

df = pd.DataFrame({
"Pergunta": lista_lida,
"Resposta": respostas
})

df.to_csv("respostas.csv", index=False, encoding="utf-8")

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR