Entwicklung · REST-API

Den MESSAI-Korpus per Skript abfragen

Fünf Endpunkte decken die meisten externen Anwendungsfälle ab – Leistung vorhersagen, den Korpus mit 23.596 Publikationen durchsuchen, die Extraktionen einer Publikation abrufen, den bayesschen Posterior (A-posteriori-Verteilung) eines Parameters lesen und den Chat mit Quellenbelegen befragen. Korpuszahlen, Stand August 2026.

POST /api/ml/predict

Leistung vorhersagen

Liefert Leistungsdichte, Stromdichte, Coulomb-Effizienz, Spannung und eine Anreicherungsantwort aus mehreren Blöcken für eine Reaktorkonfiguration. MFC läuft über die vollständige v1-Anreicherung; MEC/MES/MDC/MMRC/MBES/MNRC laufen über ihr jeweils eigenes klassenspezifisches Vorhersagemodell.

Anfragetext

{
  "systemType": "MFC",
  "materials": {
    "anodeMaterial": "carbon-cloth",
    "cathodeMaterial": "platinum-carbon",
    "anodeSurfaceArea": 25,
    "cathodeSurfaceArea": 25
  },
  "conditions": {
    "temperature": 30,
    "ph": 7,
    "pressure": 1,
    "substrateConcentration": 1000,
    "externalResistance": 1000
  },
  "configuration": {
    "reactorVolume": 250,
    "electrodeSpacing": 2,
    "numChambers": 1
  }
}

Beispiel

curl -X POST https://messai.io/api/ml/predict \
  -H 'Content-Type: application/json' \
  -d @request.json | jq '.powerOutput'

Hinweise

  • Jeder Anreicherungsblock liefert seinen eigenen `data_status`; fehlende Artefakte werden ehrlich ausgewiesen, statt mit Nullen aufgefüllt zu werden.
  • Hybridmodus optional über den Abfrageparameter `?hybrid=true` oder den Header `x-use-hybrid` aktivieren.
GET /api/papers/[id]

Details zu einer Publikation

Liefert den vollständigen ResearchPaper-Datensatz zur ID der Publikation (CUID), einschließlich Autorenangaben, Zusammenfassung, DOI, Jahr, primarySystemType und der Anzahl der mit einem kanonischen Slug verknüpften Extraktionen.

Parameter

Pfadparameter:
  id  string  CUID der Publikation (z. B. "clxxxx...")

Beispiel

curl 'https://messai.io/api/papers/clxxxx123' | jq '{title,authors,year,extractionCount}'

Hinweise

  • Öffentlich; keine Authentifizierung erforderlich.
  • Ein öffentliches Nachschlagen per DOI gibt es nicht: /api/papers nimmt ?search= entgegen und gleicht Titel, Zusammenfassung, Zeitschrift und Systemtyp ab, nicht die DOI. Um eine DOI von Hand zu prüfen, fügen Sie sie unter /research/upload ein (eine Seite, kein Endpunkt).
GET /api/parameters/[slug]/hierarchical-prior

Bayesscher Posterior eines Parameters

Liefert die hierarchische v1-Posterior-Anpassung (PyMC NUTS) für den Slug eines Parameters: gepooltes μ + 95-%-Intervall, Strata je system_type, MCMC-Diagnosewerte (R̂, ESS, Divergenzen).

Parameter

Pfadparameter:
  slug  string  Kanonischer Parameter-Slug (z. B. "power_density_areal")

Beispiel

curl 'https://messai.io/api/parameters/power_density_areal/hierarchical-prior' | jq '.pooled'

Hinweise

  • data_status: "populated" / "awaiting_artifact" / "parameter_not_in_priors" / "read_error" – danach verzweigen.
  • Parameter auf der Log-Skala liefern sowohl Werte auf der Fit-Skala (mu_log, tau_log) als auch rücktransformierte Werte (mu, ci95_low, ci95_high).
POST /api/chat

Chat mit Quellenbelegen

LLM-Antworten streamen, gestützt auf ~50 Korpus- und ML-Werkzeuge. Alle Tatsachenaussagen müssen Publikationen zitieren, die über Tool-Aufrufe abgerufen wurden.

Anfragetext

{
  "messages": [{"role": "user", "content": "What anode materials maximise power density for acetate substrates?"}],
  "mode": "lab-research"
}

Beispiel

curl -X POST https://messai.io/api/chat \
  -H 'Content-Type: application/json' \
  -d @messages.json

Hinweise

  • Streamt als `text/event-stream`. Der Token-Verbrauch wird pro API-Schlüssel erfasst.
  • mode: "lab-research" | "lab-design" | "lab-mutation"