#Criar um arquivo txt a partir de uma listade perguntas em python
perguntas = [
'De que é feito o Sol?',
'De que é feito o planeta Saturno?',
'Qual é a galáxia mais antiga já encontrada?',
'Qual é a maior estrela já encontrada?',
'Qual é a estrela mais próxima do Sol?'
]
with open("perguntas.txt", "w", encoding="utf-8") as arquivo:
for pergunta in perguntas:
arquivo.write(pergunta + '\n')
#Ler as perguntas desse arquivo
with open("perguntas.txt", "r", encoding="utf-8") as arquivo:
perguntas = arquivo.readlines()
for index, pergunta in enumerate(perguntas):
print(f"Pergunta {index+1}: {pergunta}")
#Obter resposta de uma LLM para cada pergunta
import os
from google.colab import userdata
from groq import Groq
from google.api_core.exceptions import TooManyRequests
import time
os.environ['GROQ_API_KEY'] = userdata.get('GROQ_API_KEY')
client = Groq()
#função para responder às perguntas usando a LLM gpt-oss-20B
def responder_lista_de_perguntas(perguntas):
print("Resposta para as perguntas:\n")
respostas = []
for pergunta in perguntas:
try:
completion = client.chat.completions.create(
model="openai/gpt-oss-20b",
messages=[
{
"role": "user",
"content": pergunta
}
],
temperature=0.5,
max_completion_tokens=7000, # Reduzido para ficar dentro do limite de tokens
top_p=1,
reasoning_effort="medium",
stream=True,
stop=None
)
resposta = ''
# Itera sobre a resposta do stream e agrega o conteúdo à lista "respostas"
for chunk in completion:
resposta += chunk.choices[0].delta.content or ""
print(resposta)
respostas.append(resposta)
except TooManyRequests as e:
print(f"\nERRO: Limite de requisições excedido. Tentando novamente em 60 segundos.")
print(f"Detalhes do erro: {e}")
time.sleep(60) # Espera 60 segundos
# Chama a função recursivamente a partir do índice atual
responder_lista_de_perguntas(perguntas)
return # Retorna para evitar processamento duplicado após a chamada recursiva
return respostas
#salvar os resultados em um arquivo .csv
import pandas as pd # Importar pandas
respostas_list = responder_lista_de_perguntas(perguntas)
# Converter a lista de respostas para um DataFrame do pandas
df_respostas = pd.DataFrame(respostas_list, columns=['Resposta'])
df_respostas.to_csv('respostas_perguntas.csv', index=False, sep=';')
print("Respostas salvas com sucesso!")
#Ler o arquivo .csv usando Pandas
respostas = pd.read_csv("respostas_perguntas.csv", sep=';')
respostas.head()