Skip to content

Commit 7fe77a8

Browse files
committed
updated examples
1 parent aa8d34c commit 7fe77a8

19 files changed

Lines changed: 257 additions & 292 deletions

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,7 @@ extractor = LangStruct(
399399
schema=YourSchema,
400400
model="gemini/gemini-2.5-flash", # Fast & cost-effective
401401
chunking_config=config,
402-
optimize=True # Default is True
402+
optimize=True # Enabled for training data
403403
)
404404
```
405405

‎docs/src/content/docs/examples/financial-documents.mdx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ Extract key information from quarterly earnings reports:
117117
# Create specialized financial document extractor
118118
financial_extractor = LangStruct(
119119
schema=FinancialReportSchema,
120-
model="gemini/gemini-2.5-flash" # Fast and cost-effective for financial data
121-
# Auto-optimization and source grounding enabled by default
120+
model="gemini/gemini-2.5-flash-lite" # Fast and cost-effective for financial data
121+
# Source grounding enabled by default, optimization can be enabled if needed
122122
)
123123

124124
# Sample earnings report text

‎docs/src/content/docs/examples/legal-contracts.mdx‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Create an extractor for legal document analysis:
6464
# Create the extractor with legal domain optimization
6565
extractor = LangStruct(
6666
schema=LegalContractSchema,
67-
model="gemini/gemini-2.5-flash", # Fast and reliable for legal analysis
67+
model="gemini/gemini-2.5-flash-lite", # Fast and reliable for legal analysis
6868
optimize=True,
6969
use_sources=True, # Critical for legal document traceability
7070
temperature=0.1, # Lower temperature for consistency
@@ -190,7 +190,7 @@ class ContractRiskAssessment(Schema):
190190

191191
risk_analyzer = LangStruct(
192192
schema=ContractRiskAssessment,
193-
model="gemini/gemini-2.5-flash",
193+
model="gemini/gemini-2.5-flash-lite",
194194
system_prompt="""You are a legal risk analyst. Identify potential risks in contracts
195195
and provide actionable recommendations for risk mitigation. Focus on:
196196
- Financial exposure and liability
@@ -412,7 +412,7 @@ You are analyzing a Non-Disclosure Agreement (NDA). Focus on:
412412
nda_extractor = LangStruct(
413413
schema=NDASchema,
414414
system_prompt=nda_prompt,
415-
model="gemini/gemini-2.5-flash"
415+
model="gemini/gemini-2.5-flash-lite"
416416
)
417417
```
418418

‎docs/src/content/docs/examples/medical-records.mdx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ Extract key information from clinical notes:
9191
# Create medical data extractor
9292
medical_extractor = LangStruct(
9393
schema=MedicalRecordSchema,
94-
model="gemini/gemini-2.5-flash", # Fast and reliable for medical analysis
94+
model="gemini/gemini-2.5-flash-lite", # Fast and reliable for medical analysis
9595
temperature=0.0, # Zero temperature for consistent medical analysis
9696
use_sources=True # Track sources for validation
9797
)

‎docs/src/content/docs/examples/scientific-papers.mdx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Create an extractor for research paper analysis:
7474
# Create the extractor optimized for academic content
7575
extractor = LangStruct(
7676
schema=ScientificPaperSchema,
77-
model="gemini/gemini-2.5-flash", # Fast and reliable for academic content
77+
model="gemini/gemini-2.5-flash-lite", # Fast and reliable for academic content
7878
optimize=True,
7979
use_sources=True, # Track where information was found
8080
temperature=0.2, # Slightly higher for nuanced interpretation
@@ -504,7 +504,7 @@ You are analyzing a medical research paper. Focus on:
504504
medical_extractor = LangStruct(
505505
schema=MedicalPaperSchema,
506506
system_prompt=medical_prompt,
507-
model="gemini/gemini-2.5-flash"
507+
model="gemini/gemini-2.5-flash-lite"
508508
)
509509
```
510510

‎docs/src/content/docs/installation.mdx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ Set up any provider you prefer:
111111
export GOOGLE_API_KEY="your-google-api-key"
112112
```
113113

114-
Use any Gemini model: `gemini-2.5-flash`, `gemini-2.5-pro`, etc.
114+
Use any Gemini model: `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-2.5-pro`, etc.
115115

116116
### OpenAI
117117

‎docs/src/content/docs/optimization.mdx‎

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,31 @@ Make your extraction more accurate with automatic optimization. LangStruct learn
99

1010
## The Easy Way
1111

12-
**Optimization is enabled by default - you're already getting better results:**
12+
**Enable optimization for better results:**
1313

1414
```python
1515
from langstruct import LangStruct
1616

17-
# Create extractor (optimization enabled by default)
18-
extractor = LangStruct(example={
19-
"name": "Dr. Sarah Johnson",
20-
"age": 34,
21-
"occupation": "data scientist"
22-
})
17+
# Create extractor with optimization enabled
18+
extractor = LangStruct(
19+
example={
20+
"name": "Dr. Sarah Johnson",
21+
"age": 34,
22+
"occupation": "data scientist"
23+
},
24+
optimize=True
25+
)
2326

2427
result = extractor.extract("Dr. Sarah Johnson, 34, is a data scientist")
25-
print(result.entities) # Already optimized results!
28+
print(result.entities) # Optimized results!
2629
```
2730

28-
That's it! Your extractions are automatically improving over time.
29-
30-
**To disable optimization (not recommended):**
31+
**Default behavior (faster startup, good baseline accuracy):**
3132

3233
```python
33-
# Only if you need faster startup and don't care about accuracy
34-
extractor = LangStruct(
35-
example={"name": "John", "age": 30},
36-
optimize=False
37-
)
34+
# No optimization - good for quick experiments
35+
extractor = LangStruct(example={"name": "John", "age": 30})
36+
# optimize=False by default - enables faster startup
3837
```
3938

4039
## When You Have Training Data
@@ -106,7 +105,7 @@ extractor.optimize(
106105

107106
<CardGrid>
108107
<Card title="Start Simple" icon="rocket">
109-
Optimization is enabled by default - just create your extractor
108+
Start without optimization for quick experiments, enable when you need accuracy
110109
</Card>
111110
<Card title="Quality Over Quantity" icon="star">
112111
10 good training examples beats 100 poor ones
@@ -122,7 +121,7 @@ extractor.optimize(
122121
## Common Questions
123122

124123
**Q: Do I always need training data?**
125-
A: No! Optimization works without any training data and still improves results.
124+
A: No! Optimization can work without training data, but providing examples improves results significantly.
126125

127126
**Q: How long does optimization take?**
128127
A: Usually 1-5 minutes for typical datasets (10-100 examples).
@@ -140,7 +139,7 @@ A: Just change the model and re-optimize! Same training data, same accuracy - ze
140139

141140
<CardGrid>
142141
<Card title="Try It Now" icon="laptop">
143-
Create a LangStruct extractor - optimization is already enabled!
142+
Create a LangStruct extractor and enable optimization when you need accuracy!
144143
</Card>
145144
<Card title="Source Grounding" icon="document">
146145
[Track where information comes from](/source-grounding/)

‎docs/src/content/docs/quickstart.mdx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ extractor = LangStruct(example=schema)
166166
# Or specify model explicitly
167167
extractor = LangStruct(
168168
example=schema,
169-
model="gemini/gemini-2.5-flash" # Fast & cheap
169+
model="gemini/gemini-2.5-flash-lite" # Fast & cheap
170170
)
171171

172172
# Local models

‎docs/src/content/docs/source-grounding.mdx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class PersonSchema(Schema):
4444
# Enable source grounding
4545
extractor = LangStruct(
4646
schema=PersonSchema,
47-
model="gemini/gemini-2.5-flash", # Fast and cost-effective
47+
model="gemini/gemini-2.5-flash-lite", # Fast and cost-effective
4848
use_sources=True # Enable source tracking
4949
)
5050

@@ -323,7 +323,7 @@ class ComplianceExtractor:
323323
self.extractor = LangStruct(
324324
schema=schema,
325325
use_sources=True,
326-
model="gemini/gemini-2.5-flash" # Fast and reliable
326+
model="gemini/gemini-2.5-flash-lite" # Fast and reliable
327327
)
328328

329329
def extract_with_audit_trail(self, document, document_id=None):

‎docs/src/content/docs/why-dspy.mdx‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,8 @@ result = extractor.extract("Microsoft announced $65B revenue for Q4")
146146
# Start with OpenAI
147147
extractor = LangStruct(
148148
example={"company": "Apple", "revenue": 100.0},
149-
model="gpt-4o"
149+
model="gpt-4o",
150+
optimize=True
150151
)
151152
extractor.optimize(training_texts, expected_results)
152153

0 commit comments

Comments
 (0)