Per què hem usat la IA?
Hem utilitzat Google Gemini com a copilot de programació per agilitzar el desenvolupament del chatbot. En lloc de partir de zero, hem usat la IA per generar la base del codi, entendre cada bloc i millorar-lo progressivament. La IA també ens ha ajudat a documentar el projecte: comentaris al codi, README i CHANGELOG actualitzats.
El CHANGELOG i el README serveixen com a eina professional: permeten veure l’evolució del projecte, faciliten la traçabilitat dels canvis i garanteixen que qualsevol persona pugui entendre i mantenir el codi a llarg termini.
Procés d’iteració amb la IA
Iteració 1 – Primer prompt
Li vam demanar a la IA:
“Crea un chatbot en Python per a Google Colab que usi l’API de Gemini per respondre preguntes sobre una LAN Party. Ha de tenir un servidor Flask per connectar-lo amb un HTML.”
La IA va generar un codi bàsic amb Flask i l’API de Gemini, però sense gestió d’errors, sense CORS i amb la clau API exposada directament al codi. El FrontEnd no podia connectar-se al servidor.
Iteració 2 – Solució dels errors de connexió
Li vam demanar:
“El codi té errors de CORS quan el FrontEnd intenta connectar-se. Afegeix flask-cors per solucionar-ho. També necessito que el servidor sigui accessible des d’Internet usant ngrok. Afegeix gestió d’errors amb try-except.”
Millores obtingudes:
- Afegida la llibreria
flask-corsper permetre peticions del FrontEnd - Integrat
pyngrokper crear un túnel públic HTTPS automàticament - Afegit bloc
try-exceptper gestionar errors sense que el servidor caigui
Iteració 3 – Millora de la seguretat
Li vam demanar:
“Com puc evitar posar la clau API directament al codi? I com puc fer que el codi seleccioni automàticament el model Gemini més recent?”
Millores obtingudes:
- La IA va explicar com usar
userdata.get()de Google Colab per guardar les claus com a Secrets (icona de la clau a Colab), evitant que apareguin al codi públic - Va afegir un bucle que selecciona automàticament el model Flash més recent disponible
Iteració 4 – Comentaris al codi
Li vam demanar:
“Afegeix comentaris explicatius a cada bloc del codi perquè sigui fàcil d’entendre per a algú que no el coneix.”
El codi final té comentaris detallats a cada secció: instal·lació de llibreries, configuració de l’API, selecció del model, instruccions del bot, servidor Flask i configuració de ngrok.
Qualitat del codi
El codi final segueix aquests criteris de qualitat:
- Variables descriptives:
model_name,instruccions,user_input,public_url - Comentaris a cada bloc: expliquen el propòsit de cada secció
- Gestió d’errors:
try-excepta l’endpoint i a la selecció del model - Seguretat: les claus API es guarden com a Secrets de Colab, mai al codi
El CHANGELOG.md del repositori recull tots els canvis amb dates i descripcions clares.
Evidències
Enllaços
Repositori GitHub: https://github.com/Martigaca08/chatbot-lan-party
Notebook a Google Colab: https://colab.research.google.com/github/Martigaca08/chatbot-lan-party/blob/main/Xat_bot_LAN_Party.ipynb