36 lines
1.5 KiB
Markdown
36 lines
1.5 KiB
Markdown
Documento di Analisi Funzionale
|
|
Flusso dei Dati
|
|
Trigger: L'utente clicca sul pulsante "Save to Drive" nell'estensione.
|
|
|
|
Scraping: Il Content Script estrae il testo dal container principale della chat (es. <main> o selettori specifici per provider).
|
|
|
|
Inference (Core Logic):
|
|
|
|
Il testo viene passato a un Web Worker per non bloccare la UI.
|
|
|
|
Il modello LLM esegue un task di "Structuring": identifica i turni di conversazione.
|
|
|
|
Output: [{role: "user", content: "..."}, {role: "assistant", content: "..."}].
|
|
|
|
Formatting: Un modulo helper trasforma il JSON in una stringa Markdown, aggiungendo metadati (Data, URL sorgente, Titolo).
|
|
|
|
Export:
|
|
|
|
Controllo del token OAuth tramite chrome.identity.
|
|
|
|
Chiamata POST a https://www.googleapis.com/drive/v3/files.
|
|
|
|
Mimetype: text/markdown o conversione in Google Doc.
|
|
|
|
Casi d'Uso Principali
|
|
UC1: Archiviazione Sessione di Debug: Lo sviluppatore salva una sessione di coding con ChatGPT per riferimento futuro nel proprio Drive tecnico.
|
|
|
|
UC2: Creazione di Documentazione: Trasformazione di un brainstorming con Gemini in una bozza di progetto strutturata.
|
|
|
|
Gestione Errori e Casi Limite
|
|
Modello troppo pesante: Se la GPU non è disponibile, fallback su Wasm (CPU) con avviso di latenza all'utente.
|
|
|
|
Chat molto lunghe: Implementazione di un sistema di "sliding window" per il contesto dell'LLM locale (limite tipico 2k-8k token).
|
|
|
|
Cambio DOM: Se il modello non identifica blocchi validi, fallback su un parser basato su regole (Regex/CSS) e log dell'errore per aggiornare le specifiche.
|