Skip to main content

PRIVAL 项目文档

一、项目简介

PRIVAL(Prompt Input VALidation)是一个轻量级的 Prompt 质量检测框架,提供多维度自动化评分和建议,帮助用户优化输入给大模型的 Prompt,提升模型执行效果。

核心特点

  • 多维度评分:自定义清晰度、歧义性、注入风险等 12+ 维度检测,支持启用/禁用及权重配置。
  • 插件化设计:每个维度由独立 detector 模块实现,方便扩展和替换。
  • 低代码接口:一行 evaluate_prompt(prompt) 即可获取详细评分和改进建议。
  • 报告输出:支持 JSON、Markdown、HTML 报告,便于可视化和分享。

二、安装和使用

pip install prival
from prival import evaluate_prompt

prompt = "请帮我写一封求职邮件,针对 AI 工程师岗位。"
result = evaluate_prompt(prompt)
# result = {
#   "total_score": 0.78,
#   "details": {
#     "clarity": {"score": 0.9, "suggestions": [...]},
#     ...
#   }
# }

或在命令行中使用 CLI:

prival-cli evaluate "你的 prompt 文本"

三、项目结构

prival/
├── config.yaml               # 全局配置:维度开关、权重、阈值等
├── __init__.py               # 包初始化,导出 evaluate_prompt 接口
├── detectors/                # 独立维度检测器模块
│   ├ clarity.py              # 清晰度检测
│   ├ ambiguity.py            # 歧义性检测
│   ├ step_guidance.py        # 步骤指引检测
│   ├ verbosity.py            # 冗余度检测
│   ├ injection_risk.py       # Injection 风险检测
│   ├ context_completeness.py # 上下文完整性检测
│   ├ ethic_compliance.py     # 伦理合规检测
│   ├ structural_cleanness.py # 结构简洁度检测
│   ├ relevance.py            # 关联度检测
│   ├ feasibility.py          # 可行性检测
│   ├ grammar_spelling.py     # 语法拼写检测
│   ├ length_appropriateness.py # 长度适宜性检测
│   └ diversity.py            # 多样性检测
├── utils/                    # 通用 NLP 辅助工具
│   └ nlp_helpers.py          # 句法解析、关键词抽取、相似度计算等
├── core.py                   # 核心流程:加载配置,调度 detectors 并发执行
├── scoring.py                # 总分计算与格式化输出
├── report.py                 # 报告生成:HTML/Markdown
└── tests/                    # 单元测试和基准 prompt 样本

四、配置示例(config.yaml)

# 启用和权重配置
enabled_dimensions:
  - clarity
  - ambiguity
  - step_guidance
  - verbosity
  - injection_risk
  - context_completeness
  - ethic_compliance
  - structural_cleanness
  - relevance
  - feasibility
  - grammar_spelling
  - length_appropriateness
  - diversity
# politeness 可选,默认关闭
#  - politeness

# 各维度权重(加权得分用)
weights:
  clarity: 0.15
  ambiguity: 0.10
  step_guidance: 0.10
  verbosity: 0.10
  injection_risk: 0.15
  context_completeness: 0.10
  ethic_compliance: 0.10
  structural_cleanness: 0.05
  relevance: 0.05
  feasibility: 0.05
  grammar_spelling: 0.05
  length_appropriateness: 0.05
  diversity: 0.05

# 各维度阈值设置(可选)
thresholds:
  clarity: 0.6
  injection_risk: 0.5
  # 等...

五、测试和报告

  • 单元测试:在 tests/ 目录下编写 pytest 测试用例,确保各 detector 规则正确。
  • 报告生成:调用 prival.report.generate_html(result, "report.html") 一键输出可分享的 HTML 报告,支持图表和建议列表。

Happy prompting! 欢迎提交 issue 或 PR,共同完善 PRIVAL。

Metadata

Release files for prival 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for prival 0.1.9
File Size Uploaded
prival-0.1.9.tar.gz 11.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for prival 0.1.9
File Interpreter ABI Platform
prival-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 25.1 kB

Release files / prival-0.1.9.tar.gz

Download URL prival-0.1.9.tar.gz
Size 11.5 kB
Tags Source
SHA-256 checksum
How to use checksums
1beb78781f249f510b39c7f85a9a8171e5b2afee40ff1005bcae1a5f30aefa97
BLAKE2b-256 checksum
How to use checksums
74a3b6914a518d44064f535362923949143295fc810946c65cc5a8c7dfafc234
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / prival-0.1.9-py3-none-any.whl

Download URL prival-0.1.9-py3-none-any.whl
Size 13.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f94e19c5d308e8e963f7908d1b0e557631ac161f5f8941ded8b7709f7abd220e
BLAKE2b-256 checksum
How to use checksums
2831047ebe834ad3320c3c3f408f6ce1665e28e9b4ce3e437e5b4c08320b8603
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page