Skip to content

Releases: svilupp/PromptingTools.jl

v0.56.0

18 Sep 19:37
826fceb
Compare
Choose a tag to compare

PromptingTools v0.56.0

Diff since v0.55.0

Updated

  • Enabled Streaming for OpenAI-compatible APIs (eg, DeepSeek Coder)
  • If streaming to stdout, also print a newline at the end of streaming (to separate multiple outputs).

Fixed

  • Relaxed the type-assertions in StreamCallback to allow for more flexibility.

Commits

Merged pull requests:

Closed issues:

  • Implement Prompt Caching Feature for Anthropic API Calls (#196)

v0.55.0

15 Sep 14:13
17cea6b
Compare
Choose a tag to compare

PromptingTools v0.55.0

Diff since v0.54.0

Added

  • Added support for OpenAI's JSON mode for aiextract (just provide kwarg json_mode=true). Reference Structured Outputs.
  • Added support for OpenRouter's API (you must set ENV OPENROUTER_API_KEY) to provide access to more models like Cohere Command R+ and OpenAI's o1 series. Reference OpenRouter.
  • Added new OpenRouter hosted models to the model registry (prefixed with or): oro1 (OpenAI's o1-preview), oro1m (OpenAI's o1-mini), orcop (Cohere's command-r-plus), orco (Cohere's command-r). The or prefix is to avoid conflicts with existing models and OpenAI's aliases, then the goal is to provide 2 letters for each model and 1 letter for additional qualifier (eg, "p" for plus, "m" for mini) -> orcop (OpenRouter cohere's COmmand-r-Plus).

Updated

  • Updated FAQ with instructions on how to access new OpenAI o1 models via OpenRouter.
  • Updated FAQ with instructions on how to add custom APIs (with an example examples/adding_custom_API.jl).

Fixed

  • Fixed a bug in aiclassify for the OpenAI GPT4o models that have a different tokenizer. Unknown model IDs will throw an error.

Commits

Merged pull requests:

v0.54.0

10 Sep 09:15
8fdad32
Compare
Choose a tag to compare

PromptingTools v0.54.0

Diff since v0.53.0

Updated

  • Improved the performance of BM25/Keywords-based indices for >10M documents. Introduced new kwargs of min_term_freq and max_terms in RT.get_keywords to reduce the size of the vocabulary. See ?RT.get_keywords for more information.

Commits

Merged pull requests:

  • Updated DocumentTermMatrix implementation (#205) (@svilupp)

v0.53.0

09 Sep 09:29
b89eb97
Compare
Choose a tag to compare

PromptingTools v0.53.0

Diff since v0.52.0

Added

  • Added beta headers to enable long outputs (up to 8K tokens) with Anthropic's Sonnet 3.5 (see ?anthropic_extra_headers).
  • Added a kwarg to prefill (aiprefill) AI responses with Anthropic's models to improve steerability (see ?aigenerate).

Updated

  • Documentation of aigenerate to make it clear that if streamcallback is provide WITH flavor set, there is no automatic configuration and the user must provide the correct api_kwargs.
  • Grouped Anthropic's beta headers as a comma-separated string as per the latest API specification.

Commits

Merged pull requests:

v0.52.0

07 Sep 18:50
5c198fb
Compare
Choose a tag to compare

PromptingTools v0.52.0

Diff since v0.51.0

Added

  • Added a new EXPERIMENTAL streamcallback kwarg for aigenerate with the OpenAI and Anthropic prompt schema to enable custom streaming implementations. Simplest usage is simply with streamcallback=stdout, which will print each text chunk into the console. System is modular enabling custom callbacks and allowing you to inspect received chunks. See ?StreamCallback for more information. It does not support tools yet.

Commits

Merged pull requests:

v0.51.0

03 Sep 08:51
d04c737
Compare
Choose a tag to compare

PromptingTools v0.51.0

Diff since v0.50.0

Added

Added more flexible structured extraction with aiextract -> now you can simply provide the field names and, optionally, their types without specifying the struct itself (in aiextract, provide the fields like return_type = [:field_name => field_type]).
Added a way to attach field-level descriptions to the generated JSON schemas to better structured extraction (see ?update_schema_descriptions! to see the syntax), which was not possible with struct-only extraction.

Commits

Merged pull requests:

v0.50.0

16 Aug 07:19
ba72cd1
Compare
Choose a tag to compare

PromptingTools v0.50.0

Diff since v0.49.0

Breaking Changes

  • AIMessage and DataMessage now have a new field extras to hold any API-specific metadata in a simple dictionary. Change is backward-compatible (defaults to nothing).

Added

  • Added EXPERIMENTAL support for Anthropic's new prompt cache (see ?aigenerate and look for cache kwarg). Note that COST estimate will be wrong (ignores the caching discount for now).
  • Added a new extras field to AIMessage and DataMessage to hold any API-specific metadata in a simple dictionary (eg, used for reporting on the cache hit/miss).

Commits

Merged pull requests:

  • Add experimental prompt cache support for Anthropic (#198) (@svilupp)

v0.49.0

14 Aug 08:08
dde6ad9
Compare
Choose a tag to compare

PromptingTools v0.49.0

Diff since v0.48.0

Merged pull requests:

v0.48.0

09 Aug 08:36
8f92bb2
Compare
Choose a tag to compare

PromptingTools v0.48.0

Diff since v0.47.0

Added

  • Implements the new OpenAI structured output mode for aiextract (just provide kwarg strict=true). Reference blog post.

Commits

Merged pull requests:

Closed issues:

  • Broken on Julia 1.11beta2 (#158)
  • Add support for OpenAI's Structured Outputs (#191)

v0.47.0

08 Aug 07:24
e1bde17
Compare
Choose a tag to compare

PromptingTools v0.47.0

Diff since v0.46.0

Merged pull requests:

Closed issues:

  • Unable to get started (#168)