Spaces:
Configuration error
Configuration error
|
Download docs/ML_MODELS.md from Sivaneshakumar/sanjeevani-api: direct link, hf CLI and curl.
- Browser
- Download file 3.43 kB
-
https://huggingface.co/spaces/Sivaneshakumar/sanjeevani-api/resolve/main/docs/ML_MODELS.md
- Command line
-
hf download hf://spaces/Sivaneshakumar/sanjeevani-api/docs/ML_MODELS.md
-
curl -L -o ML_MODELS.md https://huggingface.co/spaces/Sivaneshakumar/sanjeevani-api/resolve/main/docs/ML_MODELS.md
3.43 kB
SanjeevaniAI — Machine Learning & Biomedical NER Specification
1. Local Neural Architecture
SanjeevaniAI utilizes a dedicated local transformer model for biomedical token classification:
- Base Architecture:
roberta-large(24 layers, 16 attention heads, 1024 hidden dimensions, 355 Million parameters). - Fine-Tuning Dataset: BioCreative V Chemical Disease Relation dataset (BC5CDR).
- Local Model Path:
D:\SanjeevaniAI\models\bc5cdr-ner(1.4 GB model weights). - Classification Head:
RobertaForTokenClassificationwith linear projection layer mapping hidden states to BIO label space. - Hardware Acceleration: Automatically prioritizes
CUDA:0when an NVIDIA GPU is present; gracefully falls back to multithreaded CPU inference.
2. Label Taxonomy & BIO Tag Normalization
The model is trained on standard IOB2 tagging for biomedical literature:
| Label ID | Raw Tag | Standard Entity Class | Description |
|---|---|---|---|
| 0 | O |
Outside | Non-biomedical token |
| 1 | B-Chemical |
CHEMICAL |
Beginning of a chemical/drug entity |
| 2 | B-Disease |
DISEASE |
Beginning of a disease/condition entity |
| 3 | I-Chemical |
CHEMICAL |
Inside/continuation of a chemical entity |
| 4 | I-Disease |
DISEASE |
Inside/continuation of a disease entity |
Sub-word Token Span Reconstruction
Because RoBERTa uses Byte-Pair Encoding (BPE), sub-word tokens starting with Ġ or raw fragments must be mapped back to original text character offsets:
- Model generates predictions for all tokens.
BC5CDRNERModelaggregates sequentialB-andI-tokens of matching entity types.- Whitespace and sub-word boundary artifacts are resolved using character index tracking
[start_offset, end_offset]. - Extracted text is sliced from original input:
text[start_offset:end_offset].
3. Confidence Calibration & Post-Processing
- Softmax is applied to model output logits $z$: $$P(y_i = c) = \frac{e^{z_{i, c}}}{\sum_{j} e^{z_{i, j}}}$$
- Confidence for an entity span $E = (t_1, t_2, \dots, t_k)$ is calculated as the mean token probability: $$\text{Confidence}(E) = \frac{1}{k} \sum_{i=1}^k P(y_i = \hat{y}_i)$$
- Default Confidence Filter: $\tau = 0.85$. Entities below this threshold are discarded to prevent false positive hallucinations.
4. Inference Performance Benchmarks
| Hardware Platform | Average Latency (100-word text) | Peak Memory Usage |
|---|---|---|
| NVIDIA GeForce RTX 3050 Laptop GPU (CUDA) | 14.2 ms | 1,480 MB VRAM |
| Intel Core i7-13700H (CPU Multithreading) | 82.4 ms | 1,520 MB RAM |
5. Conversational LLM Architecture (Provider Abstraction)
SanjeevaniAI decouples reasoning from specific LLM vendors via BaseLLMProvider:
GeminiProvider: Calls Google Gemini 1.5 Pro / Flash viagoogle-genaiSDK with healthcare decision-support system prompts, structured JSON schema outputs, and safety settings blocking diagnostic assertions.MockLLMProvider: High-availability offline fallback providing deterministic, evidence-grounded educational answers for diabetes, hypertension, cardiology, and pharmacology.- Emergency Red-Flag Heuristic Triage: Runs synchronously prior to LLM inference to identify acute life-threatening presentations (e.g., crushing chest pain, dyspnea, acute neurological deficits) and output emergency escalation notices.