About the project Traditional medicinal knowledge is valuable, but it is often scattered across ethnobotanical records, scientific papers, chemical databases, and biodiversity sources. It is also easy to overstate: a traditional use, a laboratory observation, and a human clinical study do not carry the same kind of evidence.
HERBINTEL was inspired by this gap. We wanted to create a research tool that helps connect traditional knowledge with modern scientific literature while preserving provenance, uncertainty, and human oversight. What it does HERBINTEL helps researchers:
- Explore medicinal plant profiles, taxonomy, phytochemicals, and literature-linked claims.
- Extract plant names, compounds, source sentences, pages, and candidate claims from research PDFs.
- Classify reported evidence into traditional, in-vitro, in-vivo, review/meta-analysis, and clinical tiers.
- Inspect claims through a Trust Panel containing source context, page reference, DOI/PMID where available, NLP confidence, review status, and data-source labels.
- Visualize plant–compound–condition–paper relationships in an interactive knowledge graph.
- Compare literature through the Research Discovery workflow and identify evidence gaps.
- Record community attribution, consent/access status, benefit-sharing notes, and knowledge sensitivity for responsibly managed traditional knowledge.
- Calculate precision, recall, and F1 only from human-adjudicated evaluation data. What inspired us Many existing tools can summarize papers, but they can blur the line between a reported association and a validated conclusion. In ethnopharmacology, that distinction matters deeply. We designed HERBINTEL around a simple principle: A system should make it easier to trace a claim back to its source, not easier to overstate it.
Our focused case study on Withania somnifera demonstrates the workflow from traditional-use literature through phytochemical connections and different evidence tiers. It identifies extract standardization as a research question, not as a clinical conclusion. How we built it HERBINTEL is a Python and Streamlit application with a local SQLite research database. The platform uses:
- PyMuPDF for PDF text extraction.
- Rule-based botanical and phytochemical entity recognition.
- A tiered evidence classifier that separates traditional, laboratory, animal, review, and human-study contexts.
- NetworkX and Plotly for interactive knowledge graphs.
- Open integrations with Kew POWO, GBIF, PubChem, and Europe PMC.
- CSV, JSON, Markdown, and GraphML exports for reproducible downstream analysis.
- Pytest for automated testing across the data, extraction, integration, graph, and discovery workflows. Challenges we faced The biggest challenge was scientific credibility. It was tempting to present extraction confidence as certainty, or graph connections as proof. Instead, we made several deliberate design choices:
- Replaced broad “zero hallucination” language with provenance-first extraction with mandatory human review.
- Ensured benchmark/demo claims are labeled unverified unless a human curator reviews them.
- Clearly label illustrative fallback geography as not being live GBIF specimen data.
- Separate NLP extraction confidence from scientific evidence strength.
- Avoid presenting literature associations as medical advice or proof of efficacy.
- Added governance fields so traditional knowledge can carry attribution, access, benefit-sharing, and sensitivity context.
- Built a validation workflow that requires real human annotations before reporting performance metrics. What we learned We learned that a useful ethnopharmacology tool must do more than connect datasets. It must preserve the meaning and limits of each source, keep humans in the review loop, and treat traditional knowledge with respect.
HERBINTEL is not a diagnostic or treatment platform. It is a research workspace for turning fragmented evidence into traceable, responsible research hypotheses.
Built With
- ethnobotany
- ethnopharmacology
- gbif
- powo
- pubchem
- pymupdf
- python-package-index
- requests
- sqlite
- streamlit