44 lines
1.4 KiB
Markdown
44 lines
1.4 KiB
Markdown
# AgroMatrix Plant Intel Contract (Skeleton)
|
|
|
|
## Purpose
|
|
`agromatrix_plant_intel` is an internal CrewAI profile for Stepan (AgroMatrix orchestrator).
|
|
It is used for plant/crop identification and normalization when confidence matters.
|
|
|
|
## Call Path
|
|
1. User asks Stepan.
|
|
2. Stepan remains final speaker.
|
|
3. When query matches plant-intel intent, CrewAI profile `plant_intel` is selected.
|
|
4. Subteam runs:
|
|
- `plant_identifier`
|
|
- `taxonomy_validator`
|
|
- `agrovoc_normalizer`
|
|
5. Synthesis returns compact evidence package to Stepan.
|
|
|
|
## Tool Adapters
|
|
- `nature_id_identify`
|
|
- input: `image_url`, `top_k?`
|
|
- output: local/open-source candidates
|
|
- note: requires self-hosted endpoint `NATURE_ID_URL`
|
|
- `plantnet_lookup`
|
|
- input: `query?`, `image_url?`, `organ?`, `top_k?`
|
|
- output: candidate taxa + score
|
|
- note: if `PLANTNET_API_KEY` missing, fallback chain is `nature_id_identify` -> `gbif_species_lookup`
|
|
- `gbif_species_lookup`
|
|
- input: `query`, `limit?`
|
|
- output: accepted taxa/rank/status
|
|
- `agrovoc_lookup`
|
|
- input: `query`, `lang?`, `limit?`
|
|
- output: canonical AGROVOC concepts
|
|
|
|
## Response Contract (to Stepan)
|
|
- `probable_taxon`
|
|
- `confidence` (`low|medium|high` + reason)
|
|
- `alternatives` (up to 3)
|
|
- `sources` (actual tools used)
|
|
- `next_photos_required` (1-3 concrete instructions)
|
|
|
|
## Safety
|
|
- No categorical claim with weak evidence.
|
|
- If sources conflict, confidence is downgraded.
|
|
- Final user answer remains concise by default.
|