Fluxul de lucru GitHub și analiza feedback-ului bazată pe inteligență artificială

  • Aflați mai multe despre acțiunile GitHub Core pentru gestionarea codului și colaborare
  • Conectați-vă la servicii AI externe într-un mod sigur și securizat
  • Utilizați IA pentru a sintetiza feedback-ul din mai multe surse în informații utile
  1. Urmărirea părților interesate: Un sistem simplu pentru organizarea cercetării privind părțile interesate 
  2. Analizator de feedback: Un instrument bazat pe inteligență artificială care identifică tiparele și prioritățile din toate feedback-urile colectate.

Ați adunat feedback de la prieteni și familie, v-ați provocat gândirea și ați realizat interviuri cu părțile interesate. 

În lecția „Vibe Coding Your Own Founder’s Toolkit” (Codificarea propriului kit de instrumente pentru fondatori), ați creat kitul de instrumente pentru fondatori cu un modul de stocare a feedback-ului și ați utilizat localStorage pentru a salva datele între reîmprospătările paginii. 

În această lecție, vom învăța cum să adăugăm feedback AI la setul de instrumente al fondatorului nostru, pentru a ajuta la sintetizarea tuturor feedback-urilor pe care le-am colectat.  

Dar mai întâi, vei învăța cum să-ți îmbunătățești abilitățile GitHub. Dezvoltatorii profesioniști folosesc ramuri și cereri de extragere pentru a experimenta în siguranță și a colabora cu alții. Aceste abilități îți vor fi utile pe tot parcursul călătoriei tale antreprenoriale.

Îmbunătățirea abilităților GitHub

Înainte de a adăuga noi funcții, veți învăța cum lucrează dezvoltatorii profesioniști – folosind ramuri pentru a experimenta în siguranță și efectuând commit-uri de cod pentru a salva progresul și cereri pull/push pentru a îmbina codul. 

Acestea sunt cunoștințe importante care vă vor ajuta pe parcursul călătoriei dvs. cu aplicația dvs. de afaceri. Cel mai probabil veți colabora cu alți studenți pentru acest proiect și în viața reală. 

Toate acestea se realizează prin intermediul Git și, pentru a înțelege, să ne aplecăm asupra câtorva concepte.

Git este un sistem de control al versiunilor care urmărește fiecare modificare pe care o faci în codul tău. Îți permite să faci lucruri precum:

  • Experimentați în siguranță: Încercați noi funcții fără a risca codul dvs. funcțional
  • Anulează greșelile: Reveniți la o versiune anterioară dacă ceva nu funcționează sau dacă vă răzgândiți.
  • Colaborați: Lucrați cu alții fără a suprascrie modificările reciproce

Filiale

Să ne imaginăm că scrieți un document important. În loc să editați singura versiune pe care o aveți, decideți să creați un document duplicat pe care să experimentați. Dacă modificările funcționează, le îmbinați. Dacă nu, aveți în continuare documentul original și documentul nou cu modificările care nu au funcționat. 

Ramurile Git din GitHub funcționează în același mod. Iată cum funcționează:

  • ramura principală – Versiunea „oficială” de lucru
  • ramură de caracteristici – o copie a ramurii principale în care creați o nouă funcție sau efectuați modificări. Puteți denumi această ramură după cum doriți, dar vă recomandăm să alegeți un nume descriptiv, pentru a vă aminti care este scopul acesteia.
  • merge –combinarea ramurii funcționale și a modificărilor sale înapoi în ramura principală oficială

Să presupunem că ramura principală funcționează și a fost testată în întregime. Apoi, decideți să creați o nouă funcție, cum ar fi un buton nou pe o pagină, sau chiar o simplă modificare de text. Creați o nouă ramură numită „copy-change” din ramura oficială principală. Dacă ceva nu merge bine în timpul testării, ramura principală rămâne în siguranță și poate fi utilizată pentru a începe din nou.

În următoarea activitate, veți face o mică actualizare a aplicației dvs., doar pentru a exersa procesul de ramificare și îmbinare în Github. 

ACTIVITATEA 1

Practicați fluxul de lucru Github

Timp estimat: 20 minute

Accesați Github.com, navigați la depozitul dvs., selectați ramura la care ați lucrat în unitatea tehnică anterioară.

Ar trebui să observați un mesaj care vă informează că această ramură este cu 1 commit înaintea „main”. 

Acest lucru se întâmplă deoarece am făcut modificări de cod în acea ramură, dar nu am transferat niciodată aceste modificări în ramura principală. 

Haideți să facem asta, dând clic pe linkul din mesaj.

github screenshot of branch out of sync message

Dacă dai clic pe link, se va deschide pagina Pull Request (Solicitare extragere) a GitHub, unde putem compara modificările și apoi crea o solicitare de extragere.

  1. Adăugați un titlu și o descriere. Github poate că a inserat deja un titlu atunci când ați creat ramura, dar îl puteți edita și adăuga o descriere a ceea ce ați făcut.
screenshot of github pull request page

2. Faceți clic pe butonul verde Creați cerere de extragere .

Deoarece sunteți singurul proprietar al acestui repo, puteți aproba propriile cereri de extragere. În aplicațiile reale cu mai mulți membri ai echipei, este o practică obișnuită ca un alt dezvoltator să vă revizuiască cererea și să colaboreze cu dvs. dacă există probleme. Aceasta este ceea ce se numește adesea revizuirea codului.  

  1. Faceți clic pentru a îmbina cererea de extragere și confirmați cererea.

    Rețineți că aici există un proces în două etape. Este o acțiune importantă, așa că GitHub a transformat-o într-un proces în două etape pentru a se asigura că nu se fac greșeli.
github merge pull request window
  1. Ar trebui să vedeți un buton pentru a șterge ramura pe care ați folosit-o pentru a face modificările de cod. Acest lucru vă permite să păstrați depozitul curat și organizat, fără ramuri rămase care să îl aglomereze. Faceți clic pe buton pentru a șterge ramura.
  1. Navigați înapoi la depozitul dvs.
  2. Selectați „ramura” principală din partea stângă sus a repo-ului dvs. pentru a afișa lista ramurilor disponibile. 
  3. Selectați „Vizualizați ramurile” și apoi creați una nouă.
  4. Dați-i un nume descriptiv acestei lecții de validare a părților interesate.
  5. Faceți clic Creați o ramură nouă. 

Sfat: Acest pas este opțional, dar vă recomandăm să lucrați pe ramuri noi de fiecare dată când efectuați actualizări majore. Puteți alege să începeți această ramură nouă din „main” sau din alta, în funcție de obiectivul dvs. Dar, de obicei, se începe din ramura principală oficială.

În timp ce deschidem o nouă ramură, vom continua să folosim spațiul de cod pe care l-am folosit pentru ultima lecție. Amintiți-vă că am salvat câteva comentarii de la familie și prieteni în localStorage, care este stocat în browser, dar legat de o anumită adresă URL. Fiecare spațiu de cod are propria adresă URL. Dacă am deschide un nou spațiu de cod, am pierde acel localStorage. 

Așadar, pentru activitatea noastră din cadrul Founder’s Toolkit, să continuăm să folosim același cod spațiu, astfel încât să nu pierdem spațiul de stocare și să nu fie nevoie să îl reintroducem de fiecare dată.

  1. În Github, accesați Codespaces din meniul hamburger din stânga.
  2. Găsiți codul din ultima activitate și deschideți-l.

Deoarece am șters vechiul nostru branch și am deschis unul nou, vrem să ne asigurăm că spațiul nostru de cod actualizează noul branch.

  1. În fereastra Terminal din partea de jos a ecranului, tastați (pe două linii separate):

    git checkout main
    git pull origin principal

    Aceasta sincronizează spațiul dvs. de cod cu ramura principală. 

  2. Tip

    git checkout -b my-branch
    unde my-branch este numele pe care l-ai dat noii ramuri în Github la pasul 5.

Aceasta verifică noua ramură, astfel încât orice actualizări, odată confirmate și transmise, vor fi transferate către noua ramură. În același timp, vă păstrați spațiul de cod și memoria locală în browser.

  1. Copiați și lipiți această solicitare în secțiunea de chat Copilot, care ar trebui să se afle în panoul din extrema dreaptă.

Reduceți înălțimea tuturor câmpurilor de introducere a formularului la o singură linie.

  1. Testați modificările tastând python3 -m http.server 8000 în fila terminal din panoul inferior.
  2. Verificați aplicația rulată pentru a vedea dacă formularul are acum o înălțime redusă.

În ultima lecție, ați salvat și ați trimis aceste modificări către Github folosind funcția Source Control din Codespaces. 

Ați putut vedea fișierele modificate, ați adăugat o instrucțiune de confirmare și ați făcut clic pe Confirmare pentru a confirma modificările în ramura depozitului dvs.

source control feature in codespaces

Puteți face același lucru și aici. Totuși, pentru a vedea cum se face acest lucru folosind comenzi din terminal, urmați pașii de mai jos.

  1. Deschideți subfila Terminal din panoul inferior.
  2. Faceți clic pe pictograma + pentru a deschide un meniu.
  3. Selectați Terminal nou.
  1. Tastați git statuspentru a vedea informații despre ramură.
    Acest lucru vă va indica orice modificări pe care le-ați făcut și care ar putea fi gata pentru a avansa în procesul de codare. Ar trebui să vedeți ceva similar cu acest lucru:
git status screenshot
  1. Citiți mesajul pentru a vedea modificările efectuate.
  2. Tip git add . la stash modificările tale. „.” înseamnă că pregătești toate modificările fișierelor.
  3. Tip git status din nou pentru a verifica dacă modificările sunt pregătite și gata de a fi confirmate.
  4. Confirmați modificările tastând git commit -m „Actualizare înălțime formular”.
    „Actualizare înălțime formular” este ceea ce se numește mesaj de confirmare și este important să fie suficient de descriptiv pentru dvs. și pentru oricine altcineva care va revizui confirmarea.
  5. Acum trimiteți la GitHub tastând git push origin tech-unit-2-activity1-updating-form (sau orice alt nume ați dat ramurii după origin).

    Aceasta îi spune git să împingă commit-urile dvs. către depozitul Github la distanță (origin) și să le pună în ramura specificată, în acest caz, „tech-unit-2-activity1-updating-form”.  

    Sfat: Utilizarea indicatorului -u, ca în git push -u origin tech-unit-2-activity1-updating-form, setează origin și ramura dvs. la valorile implicite, astfel încât comenzile viitoare să necesite doar git push.

  1. Reveniți la Github în browser și reveniți la ramura în care ați trimis acele modificări.
    Ar trebui să vedeți un mesaj care vă informează că a fost efectuată recent o încărcare pe acea ramură.
  2. Faceți clic Compară și solicită extragerea , ceea ce ar trebui să inițieze fluxul pe care l-ați învățat în pașii anteriori.
  1. Parcurgeți pașii pentru a crea o solicitare de extragere și a îmbina modificările în ramura principală.

În acest caz, puteți păstra ramura pentru a o utiliza în activitățile rămase din această lecție, în loc să o ștergeți.

În lecția tehnică anterioară, ați creat un formular de introducere a informațiilor pentru descrierea problemei și feedback-ul prietenilor și familiei în Kitul fondatorului. În următoarea activitate, veți adăuga o nouă filă la Kitul fondatorului pentru a permite introducerea informațiilor despre părțile interesate și feedback-ul pe care l-ați obținut în lecția Perfecționarea problemei.

ACTIVITATEA 2

Creați-vă propriul instrument de urmărire a părților interesate

Timp estimat: 30 minute

Accesați Github.comși navigați la Codespaces și deschideți cel din activitatea anterioară sau este posibil să îl aveți deja deschis într-o filă din ultima activitate.

În Codespaces, în panoul Copilot, adăugați următoarea solicitare.

Adăugați o filă „Urmărire părți interesate” unde pot vizualiza feedback-ul părților interesate într-o manieră structurată.

Fila „Stakeholder Tracker” (Urmărirea părților interesate) ar trebui să conțină:

  • Titlu: „Stakeholder Tracker”
  • Subtitlu: „Gestionați-vă cercetarea pentru interviu”
  • Un formular cu următoarele câmpuri:
    • Nume (text)
    • Tip (meniu derulant: interviu, sondaj, e-mail, text)
    • Feedback cheie (perspective, preocupări ridicate, aspecte care au avut rezonanță) (zonă de text)

Când se apasă butonul:

  1. Stocați toate informațiile în înregistrări locale, format JSON
  2. Afișați toate informațiile despre părțile interesate într-un tabel în partea de jos a ecranului.
  3. Afișează un mesaj de succes după adăugarea cu succes a unei înregistrări

Alte linii directoare:

  • Păstrați interfața utilizatorului curată și consecventă

 

Notă privind stocarea datelor: 

Datele părților interesate sunt salvate în memoria locală a browserului dvs., despre care am învățat în Unitatea tehnică 1 că:

  • Datele dvs. pot persista între sesiunile browserului, dar sunt specifice acestui browser pe acest dispozitiv.
  • De asemenea, dacă ștergeți datele din browser, utilizați un alt computer sau porniți un nou mediu de codare, va trebui să reintroduceți datele.

Deocamdată, acest lucru este suficient pentru organizarea cercetării tale. În unitățile următoare, vei învăța despre stocarea în cloud a datelor permanente.

 

Așa arată setul de instrumente al fondatorului nostru atunci când utilizează această comandă. Aplicația dvs. poate arăta diferit.

stakeholder tracker form
  1. Introduceți informațiile din foaia de lucru AIVA 3: Validarea părților interesate în formular.
    Rețineți că am lăsat formularul minimalist și deschis, așa că faceți tot posibilul să introduceți informațiile importante pe care le-ați colectat de la fiecare parte interesată.
  2. Verificați dacă toate informațiile introduse apar în tabel.
  3. Verificați, de asemenea, localStorage folosind Instrumentele pentru dezvoltatori pentru a vă asigura că toate informațiile sunt stocate corect în JSON. 
full screenshot of stakeholder tracker

 

Vom continua să adăugăm elemente la aplicație în următoarea activitate, așa că nu este necesar să salvați și să transmiteți modificările încă.

Notă: Utilizarea gratuită a Copilot este limitată la:

  • 50 de mesaje de chat/lună
  • 2000 de completări de cod pe lună (cod în linie)

Din acest motiv, trebuie să fiți atenți la numărul de conversații pe care le inițiați cu Copilot în Codespaces. Dacă epuizați creditele, acestea nu se vor reseta până în luna următoare. În acest caz, puteți utiliza alte LLM-uri externe (Claude, Gemini, ChatGPT) pentru a vă ajuta cu codul. Deși nu sunt la fel de rapide ca Copilot încorporat, toate au capacitatea de a vă ajuta la codare.  Va trebui doar să copiați/lipiți codul (în ambele direcții).

Conectarea la serviciile AI

Ați reușit să organizați feedback-ul părților interesate în această filă. Și ați efectuat deja o analiză a informațiilor pe care le-ați colectat.

Acum este momentul ideal pentru a folosi inteligența artificială pentru a identifica tiparele pe care le-ați putea fi ratat. Este un instrument colaborativ care vă ajută să continuați munca excelentă pe care ați realizat-o deja.

În această parte, veți conecta aplicația la un serviciu AI real și veți crea un analizator de feedback care va scoate la iveală informații utile din cercetarea efectuată asupra părților interesate.

Vom folosi Gemini de la Google ca LLM, deoarece oferă limite generoase gratuite pentru modelele LLM puternice.

Cum funcționează aplicațiile bazate pe inteligență artificială

Probabil că ai folosit deja ChatGPT, Claude sau Gemini. Dar te-ai întrebat vreodată cum alte aplicații, precum Notion, Grammarly sau Duolingo, încorporează funcții de IA în produsele lor?

Ei nu construiesc propriile modele de IA de la zero. În schimb, se conectează la modele și servicii de IA existente prin intermediul API-uri. Vom intra în mai multe detalii în unitățile următoare, dar iată conceptele de bază.

Un API (Application Programming Interface) este pur și simplu o modalitate prin care un software comunică cu altul. Când aplicația dvs. necesită capacități de IA, aceasta trimite un mesaj către un serviciu de IA, iar serviciul returnează un răspuns.

Acest schimb durează de obicei mai puțin de câteva secunde. Aplicația dvs. trimite o solicitare API AI, așteaptă un răspuns și apoi afișează rezultatul.

Așa funcționează fiecare aplicație AI

Odată ce ai înțeles acest model, poți adăuga AI la orice aplicație pe care o creezi.

Alegerea unui furnizor de IA

La fel cum puteți alege între diferiți furnizori de stocare în cloud (Google Drive, Dropbox, iCloud), puteți alege între diferiți furnizori de IA. Iată câteva opțiuni:

Furnizor

Nivel gratuit

Cunoscut pentru

Google (Gemini)

Generoasă cu modele de top oferite

Aplicații care necesită mai multe modele la cel mai bun raport între performanță și costuri

OpenAI (ChatGPT)

Limitat (nivel gratuit numai prin aplicația ChatGPT)

Prima companie care a introdus un model LLM public, acesta fiind standardul în industrie

Groq

Bun pentru dezvoltare, 30 de solicitări/minut și 1000 de jetoane/minut, nu este necesară cartea de credit

Furnizor de modele LLM în cloud. Ideal pentru aplicații care necesită modele diferite pentru diferite cazuri de utilizare, inclusiv open-source .

Antropic (Claude)

Limitat (versiune gratuită prin aplicația Claude)

Aplicații care analizează documente lungi, logică și raționament

Pentru acest curs, recomandăm modelele Gemini pentru că:

  1. Google nu solicită un card de credit pentru accesarea API-urilor sale AI.
  2. Nivel gratuit generos cu modele de frontieră foarte bune
  3. Configurare foarte ușoară: Puteți obține o cheie API în mai puțin de 5 minute
  4. Documentație bună: Ușor de depanat dacă ceva nu funcționează corect

Conceptele pe care le înveți aici se transferă la orice furnizor LLM. Dacă mai târziu dorești să utilizezi OpenAI sau Claude în aplicația ta de producție, codul și structura sunt aproape identice. De multe ori este nevoie doar de o cheie API diferită.

Ce sunt cheile API?

Când utilizați Google Drive, Google știe cine sunteți, deoarece sunteți conectat. Dar când codul dvs. comunică cu AI-ul Google, cum știe Google că sunteți dvs.?

Pentru asta servește cheia API. Aceasta este o metodă simplă de autentificare care funcționează similar cu o parolă. Există și alte metode de autentificare pe care le vom aborda în unitățile următoare. 

Cheile API sunt de obicei un șir lung de caractere care arată cam așa:

AIzaSyB1234567890abcdefghijklmnopqrstuvwx

Când aplicația dvs. efectuează apeluri către API-ul Gemini, aceasta include această cheie. Google verifică cheia, confirmă că aparține unui cont valid și procesează solicitarea dvs.

De ce cheile API trebuie să rămână secrete

Deoarece cheile API sunt ca parolele, ele trebuie păstrate în siguranță. 

 Dacă cineva intră în posesia cheii dvs., poate provoca multe daune, cum ar fi:

  • Utilizați cota API, care poate genera costuri suplimentare pentru conturile plătite, sau utilizați cota gratuită. Poate deveni foarte costisitor.
  • Contul tău va fi suspendat pentru abuz, ceea ce este foarte grav.

Acest lucru se întâmplă mai des decât ai crede. Uneori, dezvoltatorii își încarcă accidental cheile pe GitHub, iar roboții automatizați le pot găsi în câteva minute.

Pentru această unitate, vom folosi o abordare simplă și eficientă: vom stoca cheia într-un fișier local accesibil numai în Codespaces în timpul rulării. Acesta constă în:

  1. Un .env: Un fișier special care stochează configurația
  2. Acest fișier trebuie adăugat la .gitignore , astfel încât Git să știe să nu îl încarce niciodată în cloudul GitHub.
  3. Un pachet de cod numit „dotenv” va încărca cheia din mediul

Astfel, cheia rămâne în mediul de dezvoltare local sau pe computerul local, niciodată în depozitul dvs.

În unitățile următoare, veți învăța despre metode mai sigure și mai fiabile de autentificare, cum ar fi utilizarea GitHub Secrets.

ACTIVITATEA 3

Configurați integrarea LLM și creați-vă propriul analizator de feedback

Timp estimat: 45 minute

  1. Accesați aistudio.google.com
  2. Conectați-vă cu contul dvs. Google (sau creați un cont nou)
  3. Accesați pagina Tablou de bord -> Chei API.
  4. Dacă sunteți nou în AI Studio, Google generează o cheie API Gemini implicită pentru dvs. Totuși, trebuie să faceți clic pe„Creați cheie API”și este posibil să fie necesar să creați și un proiect cloud.
    Dacă ați mai utilizat AI Studio, verificați dacă pe acest ecran apare ceva de genul„Cheie API Gemini implicită”.
    De asemenea, dacă aveți proiecte existente în Google Cloud, AI Studio vă poate solicita să alegeți unul dintre proiectele existente pentru a atașa cheia API sau puteți lua în considerare crearea unui proiect nou în Google Cloud Console și să atașați noua cheie API la acel proiect nou.
default api key in list in google ai studio
  1. Adăugați un nume descriptiv care vă permite să vă amintiți ce aplicație utilizează cheia. Dacă utilizați cheia implicită, faceți clic pe cele 3 puncte din extrema dreaptă pentru a redenumi cheia.
  2. Puteți copia cheia și o puteți păstra temporar într-un loc sigur. O vom folosi mai târziu.
copy api key in google ai studio

Sfat: Vă recomandăm să aveți o cheie API pentru fiecare aplicație pe care o creați, pentru a gestiona și controla mai bine utilizarea. În unitățile următoare, veți învăța și alte bune practici, cum ar fi menținerea unor chei API distincte pentru fiecare mediu.

Navigați la Codespaces în Github și deschideți codespace-ul din Activitatea 2.

Dacă deja ați confirmat și îmbinat modificările și ați șters ramura, urmați pașii pentru a crea o nouă ramură și sincronizați spațiul de cod cu ramura principală și verificați noua ramură.

Rețineți că cheile API sunt ca parolele. Trebuie să le stocăm într-un mod special în codul nostru, astfel încât Git să știe să le ignore și să le țină departe de depozitul GitHub, unde oricine le-ar putea vedea. 

  1. Accesați Managerul de fișiere din panoul din stânga: Faceți clic pe pictograma care arată ca două documente în bara laterală din stânga sus.
  2. Creați un fișier nou: Treceți cursorul mouse-ului peste numele proiectului (folderul rădăcină). Faceți clic pe pictograma mică pictogramă plus (+) etichetată „Fișier nou”.
  3. Denumiți fișierul .env  (atenție la punctul din numele fișierului) și adăugați acest text prin editorul din acel fișier, apoi salvați-l. 

GEMINI_API_KEY=<paste your key here>

De exemplu:

GEMINI_API_KEY=AIzaSyB1234567890abcdefghijklmnopqrstuvwx

  1. Găsiți .gitignore în Managerul de fișiere și deschideți-l.
  2. Asigurați-vă că include aceste două rânduri de text:
    • .env 
    • node_modules/

Aceste două linii instruiesc Git să ignore aceste fișiere și foldere în toate commit-urile, astfel încât acestea să nu fie stocate înapoi pe serverul Github.

Prima linie este pentru fișierul cheie API (.env), iar a doua este pentru toate pachete de cod de care aplicația noastră are nevoie pentru a rula. Se recomandă includerea folderelor care conțin pachete de cod, deoarece nu dorim să folosim tot spațiul alocat pe GitHub pentru acestea. Copilot ar putea să fi adăugat automat multe alte fișiere și foldere de ignorat, dar căutați pentru a confirma că .env și node_modules/ sunt prezente în fișier.

Dacă nu, atunci adăugați-le în linii noi și salvați fișierul.

  1. Verificați dacă fișierul .env este ignorat tastând git status în fereastra terminalului.
  2. Verificați ce afișează git status pentru a vă asigura că nu apare .env în listă. Dacă apare, asigurați-vă că fișierul .gitignore este salvat corect și include linia .env pe care am adăugat-o.

Aplicația dvs. actuală nu este activată pentru a citi fișierele .env pe cont propriu. De aceea trebuie să instalăm un pachet de cod popular numit „dotenv”, care încarcă variabilele de mediu variabilele de mediu, astfel încât codul dvs. să poată accesa cheia API fără a fi scrisă direct în codul dvs.

Există și alte alternative, dar aceasta este una dintre cele mai comune abordări, iar majoritatea dezvoltatorilor sunt familiarizați cu ea. 

  1. Accesați panoul terminalului și tastați npm install dotenv
  2. Așteptați instalarea pachetului (ar trebui să dureze doar câteva secunde)

Acum că ați adăugat cheia API într-un mod sigur și securizat și ați instalat pachetul de cod „dotenv” care poate încărca variabilele de mediu în fișierul .env (cheia API), sunteți gata să utilizați Copilot pentru a adăuga modulul Feedback Analyzer.

Copiați și lipiți această solicitare:

Sarcina ta este să faci următoarele modificări:

  1. Creați o filă nouă numită „Feedback Analyzer” (Analizator de feedback) cu instrucțiunile specifice de mai jos.

Pentru fila Feedback Analyzer (Analizator de feedback):

  • Adăugați un subtitlu cu textul „Găsiți tipare în toate feedback-urile dvs.”
  • Un câmp în care utilizatorul poate introduce problema.
  • Un buton pentru „Salvare problemă” și stocarea acesteia în localStorage.
  • Un buton „Analizează toate feedback-urile” 
  • O zonă de ieșire pentru rezultate

Când se face clic pe butonul Salvare, problema este stocată în memoria locală.

Când se face clic pe butonul Analizează:

  1. Interoghează problema și toate înregistrările părților interesate stocate în localStorage.
  2. Trimiteți toate informațiile referitoare la probleme și feedback-ul părților interesate către AI pentru analiză, efectuând un apel API LLM către Gemini.
  3. Afișați rezultatele analizei AI returnate de LLM.

Solicitare AI: 

Utilizați următoarea instrucțiune de sistem:

„Sunteți un analist de afaceri expert. Analizați feedback-ul furnizat de părțile interesate în legătură cu problema și structurați răspunsul dvs. în următoarele secțiuni:

  1. MODELE: Ce teme apar în mai multe surse? (3-5 puncte)
  2. SURPRIZE: Unde sursele nu sunt de acord și ce ar putea însemna acest lucru (3-5 puncte)
  3. IPOTEZE DE REVIZUIT: Ce ipoteze au fost contestate sau s-au dovedit greșite? (3-5 puncte)
  4. SEMNALE DE ALARMĂ: Ce preocupări sau riscuri au apărut? (3-5 puncte)
  5. TOP 3 INSIGHTS: Cele mai importante concluzii pentru problema ta (3-5 puncte) „

Cerințe tehnice:

  • Utilizați mediul local pentru a încărca cheia API.
  • Adăugați un server backend simplu Node.js/Express pentru a citi din .env
  • Efectuați o solicitare API utilizând cheia API Gemini, urmând instrucțiunile din specificațiile API.
  • Utilizați modelul Gemini „gemini-2.5-flash” cu următoarea configurație:

Temperatură = 0,7

Rețineți cerințele tehnice. Deoarece dorim ca cheia API să fie citită din fișierul .env pentru a fi mai sigură, este necesar un server backend pentru a face acest lucru. De aceea solicităm utilizarea serverului Node.js/Express. 

Copilot s-ar putea să vă solicite să instalați pachetele express, node și @google/generative-ai. Urmați instrucțiunile acestuia pentru a instala pachetele necesare. 

Sfat: Este imposibil să țineți evidența tuturor modelelor Google de ultimă generație. La data de 7 ianuarie 2026, „Gemini 3 Pro” este cel mai recent și mai puternic model AI al Google și este disponibil gratuit în Google AI Studio, cu anumite limite. De obicei, se recomandă utilizarea celui mai avansat model gratuit disponibil în această etapă incipientă a procesului de dezvoltare a ideii dvs. de afaceri în domeniul AI. Dar odată ce îl implementați, trebuie să vă asigurați că selectați modelul potrivit care răspunde nevoilor dvs. specifice și echilibrează costurile și performanța. Gemini Pro 3 este foarte costisitor de utilizat în producția live și trebuie folosit cu înțelepciune.

Odată ce AI a terminat construirea modulului, îl puteți testa.

  1. Instalați toate dependențele necesare, conform instrucțiunilor Copilot.
  2. Înainte de a rula aplicația, verificați dacă Copilot a adăugat versiunea corectă Gemini (pentru ianuarie 2026!).
    • Deschideți server.js
    • Căutați șirul „generativelanguage.googleapis.com” și verificați dacă utilizează gemini-2.5-flash. 
  1. Rulați aplicația tastând npm start în panoul terminalului.
    Aceasta este o comandă diferită, deoarece acum rulați un server backend, deci există dependențe.
  2. npm start va deschide un port diferit (3000), astfel încât să aibă propriul localStorage.
    Va trebui să reintroduceți părțile interesate și feedback-ul în aplicație.
  3. Apoi navigați la fila Analizator, introduceți descrierea problemei și salvați-o.
  4. Faceți clic pe butonul Analizează toate feedback-urile pentru a apela API-ul Gemini. 
  5. Așteptați rezultatele. Poate dura câteva secunde. 

Ce ar trebui să vedeți:

  • Analiza AI ar trebui să sintetizeze toate feedback-urile primite de la toate părțile interesate.
  • Rezultatul trebuie organizat în secțiunile indicate.

Ce se întâmplă dacă nu funcționează:

  • Verificați dacă cheia API este corectă și stocată în fișierul .env.
  • Cereți ajutorul Copilot (sau al unui alt LLM) pentru a depana problema.

Acordați câteva minute pentru a citi rezultatul API-ului Gemini. Este posibil să doriți să copiați rezultatul și să îl salvați într-un document pentru referințe viitoare.

Iată câteva aspecte de luat în considerare:

  • Care sunt modelele pe care AI le-a detectat cu un grad ridicat de încredere și pe care tu nu le-ai fi observat singur? Și, de asemenea, invers. 
  • Au spus părțile interesate ceva diferit față de prieteni și familie?
  • Ce lacune ar trebui să aprofundați?
  1. După ce vă asigurați că analizatorul funcționează corect, confirmați și trimiteți modificările pe Github, fie utilizând funcția Source Control din Codespaces, fie introducând comenzile git într-o fereastră terminal.
  2. Deschideți Github și depozitul dvs. într-o fereastră nouă, găsiți comanda pentru ramura dvs., creați o cerere de extragere și îmbinați-o.
  3. Pentru a păstra ordinea, puteți șterge ramura pe care ați creat-o pentru această unitate.
  4. Închideți fila spațiului de cod pentru a salva creditele spațiului de cod (vezi sfatul de mai jos), dar nu ștergeți spațiul de cod. . 

Sfat: Contul dvs. gratuit Github vă oferă un timp limitat în Codespaces (precum și credite Copilot limitate). Pentru Codespaces, beneficiați de:

  • 120 ore de procesare pe lună (pe un computer obișnuit cu 2 procesoare, asta înseamnă aproximativ 60 de ore pe lună)
  • 15 GB spațiu de stocare

Acest lucru ar trebui să fie suficient pentru utilizarea Codespace în cadrul acestui proiect.

Este recomandat să închideți fila browserului codespace atunci când terminați de lucrat într-un codespace, astfel încât să nu consumați timp de inactivitate care se scade din alocația lunară. Puteți să o deschideți oricând din nou accesând-o din contul dvs. Github. 

Spațiile de cod vor fi șterse automat după 30 de zile de neutilizare. Cu toate acestea, dacă ați confirmat și trimis modificările, nu veți pierde niciun cod, chiar dacă spațiul de cod este eliminat. Puteți crea oricând un nou spațiu de cod în Github.

Reflecție

Ai petrecut mult timp programând pentru a crea aplicația Founder’s Toolkit, care permite stocarea și sintetizarea diverselor informații. Iată câteva întrebări la care să te gândești:

Sunset and reflection over lake
01 Organizația „

”
În ce fel faptul că toate comentariile tale sunt organizate într-un singur loc îți schimbă modul în care privești problema ta?
02 Modele „

”
Ce tipare a identificat sinteza realizată de IA pe care nu le-ai observat atunci când ai citit feedback-ul separat?
03

MVP-ul tău
Cum ai putea folosi analiza bazată pe inteligența artificială în propria ta aplicație pentru a veni în ajutorul utilizatorilor?

Termeni cheie

  • Git — Un sistem de control al versiunilor care înregistrează fiecare modificare adusă codului tău de-a lungul timpului, permițându-ți să anulezi greșelile, să experimentezi în siguranță și să colaborezi cu alții.
  • Ramură — O copie paralelă a codului sursă, în care poți dezvolta funcționalități noi sau poți efectua modificări fără a afecta versiunea principală stabilă.
  • Commit — O instantanee salvată a modificărilor aduse codului la un moment dat, însoțită de un mesaj descriptiv care explică ce s-a modificat și de ce.
  • Pull Request (PR) — O propunere formală de a integra modificările dintr-o ramură în alta, folosită adesea ca ocazie pentru revizuirea codului înainte ca modificările să devină oficiale.
  • Push — Încărcarea commit-urilor locale într-un depozit la distanță de pe GitHub, astfel încât acestea să fie salvate în cloud și să fie accesibile colaboratorilor.
  • Repozitoriu (Repo) — Locația centrală în care sunt stocate toate fișierele, folderele și istoricul versiunilor proiectului tău, fie local, fie pe GitHub.
  • API (Application Programming Interface) — O modalitate standardizată prin care două programe software pot comunica între ele. Atunci când aplicația ta are nevoie de funcționalități de IA, aceasta trimite o solicitare către API-ul unui serviciu de IA și primește un răspuns.
  • Cheie API — Un șir secret unic care autentifică aplicația ta la un serviciu extern, funcționând ca o parolă care identifică entitatea care efectuează solicitarea.
  • Fișierul .env — Un fișier de configurare ascuns, utilizat pentru stocarea locală a valorilor sensibile, cum ar fi cheile API, astfel încât acestea să nu fie incluse în codul sursă și să nu fie supuse controlului versiunilor.
  • .gitignore — Un fișier care îi indică lui Git ce fișiere și foldere trebuie excluse din commit-uri, împiedicând încărcarea pe GitHub a datelor sensibile (cum ar fi .env) sau a fișierelor inutile (cum ar fi node_modules).
  • dotenv — Un pachet de cod care citește fișierul .env și pune valorile acestuia la dispoziția aplicației în timpul rulării, fără a încorpora informații confidențiale direct în cod.
  • LLM (Large Language Model) — Un tip de model de inteligență artificială antrenat pe volume uriașe de text, capabil să înțeleagă și să genereze limbaj uman, utilizat în acest context pentru a analiza și sintetiza feedback-ul părților interesate.
  • Temperatura LLM — Un parametru care controlează gradul de creativitate sau de previzibilitate al răspunsurilor unui model de IA. Valorile mai mici generează rezultate mai consistente, în timp ce valorile mai mari introduc mai multă varietate și creativitate.
  • npm (Node Package Manager) — Un instrument folosit pentru instalarea și gestionarea pachetelor de cod reutilizabile (cum ar fi dotenv și Express), care adaugă funcționalități proiectului tău fără a fi nevoie să scrii totul de la zero.

Resurse suplimentare