You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.2 KiB
33 lines
1.2 KiB
import os |
|
import csv |
|
|
|
from openai import OpenAI |
|
from dotenv import load_dotenv , find_dotenv |
|
|
|
fichier = "301.csv" |
|
|
|
_ = load_dotenv(find_dotenv()) |
|
|
|
client = OpenAI( |
|
api_key=os.environ.get("OPENAI_API_KEY"), |
|
) |
|
|
|
with open(fichier, 'r') as file: |
|
reader = csv.reader(file) |
|
data = list(reader) |
|
|
|
if (len(data[0])==6):#colonne appréciation inexistante |
|
data[0].append('app') |
|
|
|
for i in range(1, len(data)): |
|
prompt = "Rédige une appréciation,maximum 300 caractères pour "+data[i][0]+" dont la moyenne est de "+data[i][1]+"/20, nombre d'oublis de matériel "+data[i][2]+", nombre d'exercices non faits "+data[i][3]+", attitude en classe niveau "+data[i][4]+"/3 ,participation orale "+data[i][5]+"/3" |
|
chat_completion = client.chat.completions.create( |
|
messages=[ |
|
{"role": "system","content": "tu es un professeur de physique chimie qui rédige une appréciation pour le trimestre en cours en citant le prénom de l'élève"}, |
|
{"role": "user","content": prompt} |
|
],model="gpt-3.5-turbo") |
|
data[i][5] = chat_completion.choices[0].message.content |
|
|
|
with open(fichier, 'w', newline='') as file: |
|
writer = csv.writer(file) |
|
writer.writerows(data) |