Parameter | Description | Default |
---|---|---|
extraction_id | Unique identifier for the extraction | Required |
include_responses | Include individual response details | false |
format | Response format (summary or detailed ) | summary |
threshold | Minimum likelihood threshold for filtering | 0.0 |
Lever | When to apply (typical consensus patterns) | Root cause | Concrete fix |
---|---|---|---|
Change field names | Diverging values because models mix up concepts (e.g. organizer vs event title) | Ambiguous or overloaded label | Rename name → event_name ; clarify: “Do not include organizer.” |
Enhance field descriptions | Correct data, wrong format · Empty vs filled arrays · Varying data across requests | Instructions too vague | Add examples: “Return price in USD, two decimals (e.g. 1234.56).” / “Include items only if stock > 0.” |
Adjust field types | Numbers arrive as strings/ints/floats · Date/time fields vary wildly | Format ambiguity or loose typing | amount: Decimal instead of str ; date: datetime.date with ISO-8601 requirement |
Restructure data hierarchy | Single field conflates multiple concepts (address, full name, etc.) | Ambiguous formatting | Replace address: str with nested Address model (street , city , zip_code , country ) |
Add reasoning prompts | Simple computations fail or values inconsistent even with clear schema | Model needs step-by-step reasoning space | Add “Convert the weight to kg” as reasoning prompt to weight |
Remove problematic fields | Field stays low-likelihood after multiple iterations and isn’t critical | Unnecessary complexity | Drop the field entirely or defer to a later version |
Field | Likelihood | Status | Recommended Action |
---|---|---|---|
name | 1.0 | ✅ Good | Retain current configuration |
date | 0.5 | ⚠️ Needs work | Clarify format or tighten type |
address | 0.25 | ❌ Poor | Redesign field data structure |
Priority | Lever | Use Case | Example Modification |
---|---|---|---|
1 | Prompt clarification | Extraction varies across runs | ”Name is the event title, not the organizer’s name” |
2 | Type constraints | Parsing errors, format issues | Convert str → datetime.date |
3 | Structural revision | Field conflates multiple concepts | Break address into street , city , zip_code , country |