Metadata-Version: 2.5
Name: evidentia-ai
Version: 0.13.0
Summary: LLM-powered risk statement generator and evidence validator for Evidentia
Project-URL: Homepage, https://github.com/polycentric-labs/evidentia
Project-URL: Repository, https://github.com/polycentric-labs/evidentia
Project-URL: Issues, https://github.com/polycentric-labs/evidentia/issues
Project-URL: Changelog, https://github.com/polycentric-labs/evidentia/blob/main/CHANGELOG.md
Author-email: Allen Byrd <allen@allenfbyrd.com>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: compliance,grc,instructor,litellm,llm,nist-800-30,risk-statement
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Typing :: Typed
Requires-Python: <3.15,>=3.12
Requires-Dist: evidentia-core<0.14.0,>=0.13.0
Requires-Dist: httpx<1.0,>=0.28.1
Requires-Dist: instructor>=1.6
Requires-Dist: litellm<2.0,>=1.96.2
Requires-Dist: openai<3.0,>=2.24.0
Requires-Dist: tenacity>=9.0
Provides-Extra: eval-faithfulness
Requires-Dist: evidentia-eval[faithfulness-semantic]<0.14.0,>=0.13.0; extra == 'eval-faithfulness'
Description-Content-Type: text/markdown

# evidentia-ai

LLM-powered features for [Evidentia](https://github.com/polycentric-labs/evidentia): risk statement generation and (in Phase 3) evidence validation.

Uses **LiteLLM** for provider-agnostic LLM calls and **Instructor** for structured output extraction into Pydantic models.

## Provides

- **Risk Statement Generator** — Convert control gaps into NIST SP 800-30-compliant risk statements
- **Evidence Validator** *(Phase 3)* — Assess evidence sufficiency using LLM analysis
- **LLM Client** — Provider-agnostic wrapper around LiteLLM with retry, rate limiting, and structured output

## Supported providers

When offline mode is disabled, use providers supported by LiteLLM:
- Anthropic Claude (default: `claude-sonnet-4-6`)
- OpenAI GPT
- Google Gemini
- AWS Bedrock
- Azure OpenAI
- Local models via Ollama, vLLM, etc.

Offline AI generation supports Ollama and local OpenAI-compatible servers, including vLLM. These calls use a dedicated HTTP transport with environment proxies disabled and redirects refused. The setting is not a process-wide network sandbox; enforce host or container network isolation as well.
Use `OLLAMA_API_BASE` for Ollama or `OPENAI_API_BASE` for an OpenAI-compatible
API root. Unknown per-call routing extensions and multimodal content are
refused. Text messages, function schemas, structured output and streaming
remain supported. In-process vLLM loading is deferred for v0.13; use a local
server and follow the [qualification roadmap](../../docs/ROADMAP.md#offline-in-process-inference-follow-up).
See [the offline guide](../../docs/air-gapped.md) for precedence and limits.

Generated risks start unreviewed and unaccepted, with treatment pending.
Review decisions and model-inventory bindings cannot be supplied by the
model; generation provenance and configured inventory bindings are set by
the application. Existing stored human-reviewed records remain readable.

## Install

```bash
pip install evidentia-ai
```

License: Apache 2.0
