Un agente AI che legge "Nolvadex 20 mg al mattino" deve sapere che si tratta di tamoxifene, un antiestrogeno, ATC L02BA01, e che si tratta di una dose orale giornaliera, non una tantum. Da dove provengono queste informazioni e come vengono archiviati i farmaci in modo che il sistema successivo li legga allo stesso modo, è la vera domanda dietro "quale database di farmaci dovrei usare". Questa guida risponde per la Piattaforma Anpheros ed è onesta riguardo a ciò che la piattaforma fornisce e a ciò che non fornisce.
Versione tecnica per sviluppatori: Dati sui farmaci per agenti AI · Sistemi di codici FHIR su developers.anpheros.com, con richieste, risposte e limiti. Questa pagina è la versione in linguaggio semplice.
Codici prima: ATC
La classificazione Anatomica Terapeutica Chimica dell'OMS assegna a ogni sostanza attiva un codice organizzato in base a ciò su cui agisce e a ciò che fa: C09AA02 è enalapril (C cardiovascolare, C09 renina-angiotensina, C09AA ACE inibitori). L'ATC è gratuito, internazionale e stabile, motivo per cui Anpheros codifica ogni farmaco con esso. Il nome del prodotto rimane in code.text, in modo che la persona veda ancora "Nolvadex" e l'agente veda L02BA01.
Ciò che l'ATC non fornisce: forme di dosaggio, dimensioni delle confezioni, identificatori nazionali dei prodotti, prezzi o interazioni. Questi sono specifici per paese e spesso concessi in licenza. Un agente che ne ha bisogno necessita di una seconda fonte.
Cosa fornisce la piattaforma
- Un sottoinsieme ATC raggruppato per la ricerca, sufficiente per i farmaci che le persone in Europa assumono effettivamente, con nomi visualizzati, ricercabile su
GET /v1/terminology/atc?q=e per codice suGET /v1/terminology/atc/{code}. Lo stesso sottoinsieme supporta lo strumento MCPlookup_code. Un codice al di fuori del sottoinsieme può ancora essere utilizzato su una risorsa; la ricerca semplicemente non avrà una visualizzazione per esso. - Un sottoinsieme LOINC raggruppato per misurazioni e risultati di laboratorio, con gli stessi endpoint sotto
/v1/terminology/loinc. - Risorse FHIR con la forma corretta:
MedicationStatementper il piano di trattamento (cosa assume la persona, da quando, con quale frequenza),MedicationAdministrationper ogni dose assunta, collegata alla sua dichiarazione,Immunizationcon codici vaccinali ATC J07 eAllergyIntolerancecon ATC per allergie ai farmaci.
Ciò che la piattaforma non fornisce: un database completo di farmaci, controllo delle interazioni, controllo del range di dosaggio o supporto decisionale clinico. Questi sono deliberatamente esterni, perché renderebbero la piattaforma un dispositivo medico. Se il tuo agente ne ha bisogno, utilizza un servizio con licenza e mantieni la piattaforma come registro.
Come un agente legge i farmaci
L'API di contesto restituisce i farmaci attivi con il loro codice ATC, testo, dosaggio e provenienza (chi l'ha inserito: il paziente, un professionista, un'importazione), entro un budget di token, in modo che il modello veda un elenco pulito anziché un mucchio di risorse. Tramite MCP lo stesso è get_patient_context, e search_fhir con MedicationStatement?patient=…&status=active fornisce le risorse grezze.
curl "$BASE/v1/patients/$PID/medications?status=active" -H "Authorization: Bearer $TOKEN"
Come un agente scrive farmaci
Non scrive, propone. Una MedicationStatement inviata da un'applicazione registrata come agente AI, sotto il consenso della persona, viene convalidata e conservata come proposta. La persona vede "L'assistente X vuole aggiungere tamoxifene 20 mg al giorno", accetta o rifiuta, e solo una proposta accettata entra nel registro, contrassegnata come scritta dall'AI. L'agente dovrebbe inviare il codice ATC quando è sicuro, e sempre il nome del prodotto in code.text; un testo leggibile dall'uomo senza codice è comunque accettato e può essere codificato in seguito.
Prima dell'invio, validate_fhir_resource (o POST /fhir/R4/MedicationStatement/$validate) comunica all'agente se la risorsa è ben formata, in modo che alla persona non venga mai chiesto di approvare qualcosa di malformato.
Scelta di una seconda fonte, se necessaria
Se l'agente deve rispondere "questo interagisce con quello", scegli una fonte per paese (i dati sulle interazioni e gli identificatori dei prodotti differiscono) e per licenza (la maggior parte sono commerciali). Conserva il risultato come tua annotazione, non come risorsa nel registro della persona, a meno che un medico non lo confermi. Il registro dovrebbe contenere ciò che è stato assunto; il livello di consulenza è tuo.
Domande frequenti
Anpheros ha un database completo di farmaci?
No. Ha un sottoinsieme ATC raggruppato per codifica e ricerca, e memorizza i farmaci come risorse FHIR con codici ATC. Le interazioni, i controlli del dosaggio e i cataloghi nazionali dei prodotti non sono inclusi.
Perché ATC piuttosto che RxNorm o un elenco nazionale?
L'ATC è internazionale e gratuito, il che è importante per un registro che segue una persona oltre i confini. RxNorm è incentrato sugli Stati Uniti; gli elenchi nazionali si fermano al confine. Un'applicazione può aggiungere una seconda codifica (ad esempio un codice prodotto nazionale) accanto a quella ATC sulla stessa risorsa.
Un agente può aggiungere un farmaco al registro di una persona?
Solo come proposta che la persona approva. Nulla inviato da un agente AI viene applicato senza tale approvazione.
Come fa l'agente a sapere chi ha inserito un farmaco?
Ogni elemento nell'API di contesto porta author_type e una sorgente, e ogni risorsa ha una Provenance. Un farmaco inserito da un professionista e uno digitato dal paziente appaiono diversi per il modello, che è il punto.
C'è un modo gratuito per provarlo?
Sì: il sandbox è gratuito e i suoi 30 pazienti sintetici hanno farmaci realistici codificati con ATC. Vedi Server FHIR gratuito: il sandbox.
Tieni la tua cartella clinica con te
Anpheros Daily conserva sintomi, analisi, farmaci e documenti in un unico posto, in formato standard, sotto il tuo controllo. Il piano Basic è gratuito.