Ricerca
Gwenlake è nata dalla ricerca accademica, e non ci siamo mai fermati: accanto ai progetti per i clienti, il team porta avanti in modo continuo i propri progetti di ricerca, e una parte di esso insegna e pubblica ancora. È qui che quel lavoro emerge: prototipi da provare nel browser e il codice che pubblichiamo in open source.
Modelli piccoli, transformer, reinforcement learning… e giochi!
Una domanda che incontriamo in ogni progetto: quando un compito è ben definito e verrà eseguito un milione di volte, si prende un grande modello generalista ponendogli il compito nei suoi termini, o si costruisce un modello piccolo attorno alla struttura del compito stesso?
L’abbiamo portata a due giochi il cui punteggio non lascia spazio a discussioni, Tetris e gli scacchi.

- Applicazione · TetrisGuarda il modello giocareIl transformer per colonne gioca da solo, collocazione dopo collocazione, e non ha perso una partita nelle nostre valutazioni.Apri il giocatore di Tetris
- Applicazione · ScacchiGioca contro il modelloAffronta il modello da 6,4M di parametri all’Elo che scegli, dal giocatore di circolo al motore, nel tuo browser.Apri il giocatore di scacchi
Gwenflow, il nostro framework di IA agentica
Gwenflow esegue agenti IA: date a un agente un obiettivo, degli strumenti, una memoria e un modello, e lui ragiona, agisce, osserva e ricomincia finché l’obiettivo non è raggiunto. È l’SDK dietro ogni sistema agentico che costruiamo, e lo abbiamo scritto noi stessi per controllare ogni riga di codice che i nostri agenti eseguono.
- Python
- Licenza MIT
- pip install gwenflow
from gwenflow import Agent, ChatMistralfrom gwenflow.tools import Tool def accounts_at_risk(period: str, min_drop: int = 10) -> list[dict]: """Accounts whose usage fell by at least `min_drop` percent.""" return crm.query(period=period, trend="down", min_drop=min_drop) agent = Agent( name="Account review", instructions="Rank the accounts at risk, with the figures.", llm=ChatMistral(), tools=[Tool(accounts_at_risk)],) response = agent.run("Which accounts are at risk this quarter?")Qualsiasi modello, una sola API
OpenAI, Anthropic, Mistral, Google, DeepSeek, un Ollama locale o la nostra API: si cambia fornitore con un import e il codice dell’agente resta lo stesso. Ragionamento, streaming e immagini, audio o PDF arrivano per la stessa via.
Agenti, strumenti e team
Un agente esegue il ciclo: chiama il modello, lancia gli strumenti, legge i risultati, ricomincia fino alla fine. Qualsiasi funzione Python diventa uno strumento. Date a un agente un team di specialisti e delegherà a loro; le pipeline più lunghe sono DAG scritti in codice o in YAML.
Produzione inclusa
Output strutturato come modelli Pydantic, pipeline RAG con lettori di documenti e vector store, skill caricate su richiesta e tracciamento OpenTelemetry fin dall’inizio.
Librerie di ricerca
Più piccole e più mirate. Ciascuna è nata da un problema che abbiamo dovuto risolvere per noi stessi.
okflib
Archiviare, interrogare e generare conoscenza nell’Open Knowledge Format: bundle markdown con frontmatter YAML, segnali di affidabilità e ingestione da parte degli LLM.
Vedi su GitHubnanoSAE
Una libreria piccola e veloce per addestrare autoencoder sparsi dedicati all’analisi semantica.
Vedi su GitHub