Skip to content

Releases: svilupp/PromptingTools.jl

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)

v0.46.0

07 Aug 07:01
c533664
Compare
Choose a tag to compare

PromptingTools v0.46.0

Diff since v0.45.0

Merged pull requests:

v0.45.0

04 Aug 20:17
20a8447
Compare
Choose a tag to compare

PromptingTools v0.45.0

Diff since v0.44.0

Breaking Change

  • getindex(::MultiIndex, ::MultiCandidateChunks) now returns sorted chunks by default (sorted=true) to guarantee that potential context (=chunks) is sorted by descending similarity score across different sub-indices.

Updated

  • Updated a hcat implementation in RAGTools.get_embeddings to reduce memory allocations for large embedding batches (c. 3x fewer allocations, see hcat_truncate).
  • Updated length_longest_common_subsequence signature to work only for pairs of AbstractString to not fail silently when wrong arguments are provided.

Fixed

  • Changed the default behavior of getindex(::MultiIndex, ::MultiCandidateChunks) to always return sorted chunks for consistency with other similar functions and correct retrieve behavior. This was accidentally changed in v0.40 and is now reverted to the original behavior.

Commits

Merged pull requests: