Releases: 567-labs/instructor
Releases · 567-labs/instructor
v1.13.0
What's Changed
- fix: Gemini HARM_CATEGORY_JAILBREAK and Anthropic tool_result blocks by @jxnl in #1867
- fix(genai): fix Gemini streaming by @DaveOkpare in #1864
- fix(processing): ensure JSON decode errors are caught by retry; add regression tests for JSON mode (#1856) by @devin-ai-integration[bot] in #1857
- fix: resolve type checking diagnostics by @jxnl in #1854
- fix: update openai dependency version constraints in pyproject.toml and uv.lock to support v2 by @vishnu-itachi in #1858
- feat: add py.typed marker for type checking by @jxnl in #1868
- feat(Bedrock): add image support to Bedrock by @geekbass in #1874
- chore(deps): bump the poetry group across 1 directory with 162 updates by @dependabot[bot] in #1859
- Fix/ci uv migration by @jxnl in #1886
New Contributors
- @vishnu-itachi made their first contribution in #1858
- @geekbass made their first contribution in #1874
Full Changelog: v1.12.0...v1.13.0
v1.12.0
What's Changed
- feat: add mkdocs-llmstxt plugin and llms.txt support by @jxnl in #1795
- Restore multimodal import compatibility by @jxnl in #1797
- feat(retry): add comprehensive tracking of all failed attempts and exceptions by @jxnl in #1802
- feat(hooks): add hook combination and per-call hooks support by @jxnl in #1803
- feat(retry): propagate failed attempts through reask handlers by @jxnl in #1804
- fix(responses): generalize tool call parsing for reasoning models by @sapountzis in #1799
- feat(xai): add streaming support for xAI provider by @jeongyoonm in #1758
- fix(openai): reask functionality broken in JSON mode since v1.9.0 by @pnkvalavala in #1793
- fix(openai): remove duplicate schema from messages in JSON_SCHEMA mode by @pnkvalavala in #1761
- Handle Anthropic tool_use retries on ValidationError by @kelvin-tran in #1810
- Investigate instructor client import errors by @jxnl in #1818
- fix: replace deprecated gpt-3.5-turbo-0613 with gpt-4o-mini by @sergiobayona in #1830
- Update blog post link for LLM validation examples by @Mr-Ruben in #1824
- Debug parse error hook not emitted by @jxnl in #1819
- only use thinking_config in GenerateContentConfig by @jonbuffington in #1751
- fix: Handle Gemini chunk.text ValueError when finish_reason=1 by @jxnl in #1809
- docs: replace deprecated validation_context with context parameter by @devin-ai-integration[bot] in #1831
- docs(validation): add context parameter examples and fix error output by @devin-ai-integration[bot] in #1833
- also add pop thinking_config to handle_genai_tools by @oegedijk in #1834
- update cohere text models. by @phlogisticfugu in #1840
- fix(cohere): improve V2 API version detection and add documentation by @jxnl in #1844
- doc(openrouter): use explicit async_client=False by @wongjiahau in #1847
- Fix json parsing by @NicolasPllr1 in #1836
- fix: Bedrock OpenAI models response parsing (reasoning before text) by @len-foss in #1860
- fix: Python 3.13 compatibility and import path corrections by @jxnl in #1866
New Contributors
- @sapountzis made their first contribution in #1799
- @jeongyoonm made their first contribution in #1758
- @pnkvalavala made their first contribution in #1793
- @kelvin-tran made their first contribution in #1810
- @sergiobayona made their first contribution in #1830
- @Mr-Ruben made their first contribution in #1824
- @jonbuffington made their first contribution in #1751
- @phlogisticfugu made their first contribution in #1840
- @wongjiahau made their first contribution in #1847
- @NicolasPllr1 made their first contribution in #1836
- @len-foss made their first contribution in #1860
Full Changelog: 1.11.2...v1.12.0
v1.11.3
What's Changed
- feat: add mkdocs-llmstxt plugin and llms.txt support by @jxnl in #1795
- Restore multimodal import compatibility by @jxnl in #1797
- feat(retry): add comprehensive tracking of all failed attempts and exceptions by @jxnl in #1802
- feat(hooks): add hook combination and per-call hooks support by @jxnl in #1803
Full Changelog: 1.11.2...v1.11.3
v1.11.2
What's Changed
- feat: Add automated bi-weekly scheduled releases by @jxnl in #1787
- feat: Enhanced Google Cloud Storage Support for Multimodal Classes by @jxnl in #1788
- Fix GCS URI Support for PDF and Audio Classes by @DaveOkpare in #1763
- fix(exceptions): restore backwards compatibility for instructor.exceptions imports by @jxnl in #1789
Full Changelog: v1.11.1...1.11.2
v1.11.1
What's Changed
- fix(auto_client): add support for litellm provider in from_provider by @jxnl in #1723
- refactor(utils): complete provider-specific utility reorganization by @jxnl in #1722
- refactor: move provider-specific message conversion to handlers by @jxnl in #1724
- Update contributing docs for provider utilities by @jxnl in #1725
- Add consistent docstrings to utils modules by @jxnl in #1726
- feat: add xAI utils pattern following standard provider structure by @jxnl in #1728
- fix: implement missing hooks (completion:error and completion:last_attempt) by @jxnl in #1729
- Reorganize codebase from flat structure to modular architecture by @jxnl in #1730
- refactor: remove backward compatibility modules by @jxnl in #1731
- feat: Add comprehensive tests for XAI _raw_response functionality by @devin-ai-integration[bot] in #1735
- feat(batch): add in-memory batching support and improve error handling by @jxnl in #1746
- chore: update author joschka website by @joschkabraun in #1765
- fix(docs): correct broken tutorials navigation link by @cz3k in #1768
- feat(docs): Truefoundry AI Gateway integration with Instructor by @rishiraj-tf in #1767
- Fix Pydantic v2 deprecation warnings by migrating from class Config to ConfigDict by @anistark in #1782
- Add OpenRouter provider support to auto_client routing by @devin-ai-integration[bot] in #1783
New Contributors
- @cz3k made their first contribution in #1768
- @rishiraj-tf made their first contribution in #1767
- @anistark made their first contribution in #1782
Full Changelog: 1.10.0...v1.11.0
1.10.0
What's Changed
- Update integrations to from_provider API by @jxnl in #1668
- feat: Add native caching support with AutoCache and RedisCache adapters by @jxnl in #1674
- feat: Enhance GitHub Actions workflow for testing by @jxnl in #1675
- Deprecate google-generativeai in favor of google-genai by @jxnl in #1673
- Fix batch request parsing by @jxnl in #1677
- Enhance batch API with multi-provider support and improved CLI by @jxnl in #1678
- split off dev dependencies by @hwong557 in #1685
- Add Claude Code GitHub Workflow by @jxnl in #1688
- fix(genai): handle response_model=None for GenAI modes by @jxnl in #1694
- fix: correct is_simple_type logic for list types with BaseModel contents by @jxnl in #1698
- fix(genai): add automatic Partial wrapping for streaming requests by @jxnl in #1695
- fix(bedrock): add Bedrock-native format conversion to OpenAI format by @jxnl in #1696
- fix(tests): improve prompt for UserExtract in gemini stream test by @jxnl in #1700
- feat(bedrock): improve documentation and auto client support by @jxnl in #1686
- chore(ci): run docs test monthly by @jxnl in #1699
- Enhance logging and docs by @jxnl in #1702
- chore: remove .vscode/settings.json from tracking by @jxnl in #1705
- fix(genai): forward thinking_config parameter to Gemini models by @jxnl in #1704
- Fix/decimal support genai by @jxnl in #1712
- docs: update provider syntax by @jxnl in #1713
- feat(provider): add deepseek support by @NasonZ in #1715
- feat(auto_client): add comprehensive api_key parameter support for all providers by @johnwlockwood in #1717
- Add Anthropic parallel tool support by @jxnl in #1719
New Contributors
- @hwong557 made their first contribution in #1685
- @johnwlockwood made their first contribution in #1717
Full Changelog: 1.9.2...1.10.0
1.9.2
What's Changed
- Fix docs build path by @jxnl in #1662
- Revert "refactor: simplify safety settings configuration for Gemini API" by @jxnl in #1664
- Skip LLM tests without API keys by @jxnl in #1665
- Add xAI provider by @jxnl in #1661
- Fix GenAI image harm categories by @jxnl in #1667
Full Changelog: 1.9.1...1.9.2
1.9.1
What's Changed
- feat: add Azure OpenAI support to auto_client.py by @jxnl in #1633
- fix: expose exception classes in public API by @ivanleomk in #1613
- Update TaskAction method description for clarity on task creation and… by @eaedk in #1637
- Fix SambaNova capitalization by @jxnl in #1651
- refactor: simplify safety settings configuration for Gemini API by @DaveOkpare in #1659
- Json schema fix by @Canttuchdiz in #1657
New Contributors
- @eaedk made their first contribution in #1637
- @Canttuchdiz made their first contribution in #1657
Full Changelog: 1.9.0...1.9.1
1.9.0
What's Changed
- feat: Improve error handling with comprehensive exception hierarchy by @jxnl in #1549
- Remove
enable_prompt_cachingfrom Anthropic integration since we ha… by @ivanleomk in #1562 - Fix/docs by @ivanleomk in #1561
- lock by @jxnl in #1565
- Fix/gemini config by @ivanleomk in #1563
- feat(deps): allow rich version 14+ by @devin-ai-integration in #1566
- chore(deps): bump the poetry group across 1 directory with 26 updates by @dependabot in #1569
- chore(deps): bump anthropic from 0.52.0 to 0.52.1 in the poetry group by @dependabot in #1571
- Standardize async parameter naming in VertexAI client by @devin-ai-integration in #1555
- Add Claude Code GitHub Workflow by @ivanleomk in #1575
- feat: update README to reflect 3M monthly downloads milestone by @ivanleomk in #1577
- fix(deps): add dev and docs to project.optional-dependencies for uv compatibility by @devin-ai-integration in #1581
- docs: add Gemini thought parts filtering explanation to GenAI integration by @devin-ai-integration in #1583
- fix: filter out Gemini thought parts in genai tool parsing by @indigoviolet in #1578
- Fix documentation for dynamic model creation example by @devin-ai-integration in #1567
- chore(deps): bump the poetry group across 1 directory with 11 updates by @dependabot in #1595
- feat: implementation of JSON mode for Writer proider by @yanomaly in #1559
- feat(auto_client): add Ollama provider support by @jxnl in #1602
- fix: respect timeout parameter in retry mechanism for Ollama compatibility by @jxnl in #1603
- fix(reask): handle ThinkingBlock in reask_anthropic_json by @jxnl in #1604
- feat(docs): Add cross-links to blog posts for better navigation by @jxnl in #1605
- docs: improve clarity and consistency across documentation by @jxnl in #1606
- feat: Enable Audio module to work with Windows by @ish-codes-magic in #1619
- fix(deps): relax tenacity requirement to support google-genai 1.21.1 by @jxnl in #1625
- fix: resolve pyright TypedDict key access error in dump_message by @jxnl in #1626
- feat(docs): improve SEO for asyncio and tenacity documentation by @jxnl in #1620
- Resolve dependency version conflicts by @jxnl in #1627
- Feat/add gemini optional support by @ivanleomk in #1618
New Contributors
- @ish-codes-magic made their first contribution in #1619
Full Changelog: 1.8.3...1.9.0
1.8.3
What's Changed
- docs: improve CLAUDE.md with better architecture description by @jxnl in #1525
- fix(bedrock): minimal working example with from_bedrock client by @dogonthehorizon in #1528
- docs(blog): fix code block formatting in blog post by @workwithpurwarkrishna in #1526
- feat(bedrock): sort of add support for async bedrock client by @dogonthehorizon in #1530
- fix(bedrock): handle default message format for converse endpoint by @dogonthehorizon in #1529
- Add semantic validation documentation by @jxnl in #1541
- Implementing support for responses by @ivanleomk in #1520
- fix: remove failing test by @ivanleomk in #1544
- fix: bump version by @ivanleomk in #1545
New Contributors
- @dogonthehorizon made their first contribution in #1528
- @workwithpurwarkrishna made their first contribution in #1526
Full Changelog: 1.8.2...1.8.3