Proposal: an EvalPort/OpenEval adapter for LettuceDetect's span-level output
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 22/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 静か
- 技術スタック
- python
調査の方向性
Read predict() and predict_prompt() in lettucedetect/detectors/base.py, _filter_spans_by_confidence, and the span models in lettucedetect_api/models.py to see the span result shape. The open question is the mapping to an external schema, which the issue does not settle, so a newcomer would first need a maintainer decision on whether this lives in lettucedetect/integrations/ or in the external project. Done means an agreed mapping spec and a decision on where the adapter lives.
索引モデルが issue の本文から書いたものです。
説明
Hi — I maintain EvalPort, an open, portable schema for LLM eval/grading results (openeval.validate.validate_suite() / validate_result_set()). It's meant to be a boring, tool-agnostic JSON shape so a result produced by one eval/grading tool can be read or compared by another.
Before opening this I read through lettucedetect/detectors/base.py and lettucedetect_api/models.py to check LettuceDetect actually has a real structured result, not just a score float:
BaseDetector.predict()/predict_prompt()return a"spans"-format list of span dicts (start,end,text,confidence), filterable viamin_confidence(_filter_spans_by_confidenceinbase.py).lettucedetect_api/models.pyformalizes this as pydantic models —SpanDetectionItem(start: int,end: int,text: str,hallucination_score: float) andTokenDetectionItem, wrapped inSpanDetectionResponse/TokenDetectionResponse.
That's a genuine span-level grounding-verification result object — exactly the shape an OpenEval adapter is meant to sit on top of (a span/claim-level annotation with a confidence score, rather than a single aggregate number).
What I'm proposing: a small adapter (could live in lettucedetect/integrations/ alongside the existing LangChain callback integration, or in EvalPort itself) that converts a batch of SpanDetectionItem/span-dict results into an OpenEval ResultSet that passes validate_result_set() — mapping each detected span to a graded item with its confidence as the score. I'd be happy to draft a first-cut PR if that's useful, or just help spec the mapping if someone on your side wants to build it — this is meant as a low-effort invitation, not a request.
Repo/spec: https://github.com/adhabnr-ux/evalport
- 主要言語
- Python
- スター
- 615
- フォーク
- 60
- 平均マージ
- 1日 8時間
- マージ済み PR(30日)
- 10
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
KRLabsOrg/LettuceDetect のほかの issue
-
Stop-hook --min-confidence drops every --llm-model span (missing confidence treated as 0.0), reporting hallucinated answers as clean対応中かも @Clannad47 が 19 日前に担当しました。 オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
KRLabsOrg/LettuceDetect#117 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
KRLabsOrg/LettuceDetect#108 ·
メンテナーはふだん 1 日以内に返信
-
documentation
難易度 2/5 半日 初心者へのやさしさ 70/100
KRLabsOrg/LettuceDetect#104 ·
メンテナーはふだん 1 日以内に返信
-
ready-for-agent
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
KRLabsOrg/LettuceDetect#181 ·
メンテナーはふだん 1 日以内に返信
-
ready-for-agent
難易度 5/5 1週間以上 初心者へのやさしさ 22/100
KRLabsOrg/LettuceDetect#180 ·
メンテナーはふだん 1 日以内に返信
KRLabsOrg/LettuceDetect の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 79/100
vllm-project/vllm-omni#10051 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Bug Testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
SCIInstitute/SCIRun#2931 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 5 日以内に返信
-
author-page correction
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
acl-org/acl-anthology#10827 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 91/100
marimo-team/marimo#11768 ·
メンテナーはふだん 1 日以内に返信