Skip to content

Releases: bosun-ai/swiftide

swiftide-v0.17.4

24 Jan 18:53
e4193ef
Compare
Choose a tag to compare

Bug fixes

  • 0d9e250 (tracing) Use or_current() to prevent orphaned tracing spans (#573)
When a span is emitted that would be selected by the subscriber, but we
  instrument its closure with a span that would not be selected by the
  subscriber, the span would be emitted as an orphan (with a new
  `trace_id`) making them hard to find and cluttering dashboards.

  This situation is also documented here:
  https://docs.rs/tracing/latest/tracing/struct.Span.html#method.or_current

Full Changelog: 0.17.3...0.17.4

swiftide-v0.17.3

24 Jan 16:25
19563dd
Compare
Choose a tag to compare

New features

Bug fixes

  • c5408a9 (agents) Io::Error should always be a NonZeroExit error for tool executors (#570)

Miscellaneous

  • 0000000 Update Cargo.toml dependencies

  • 0000000 Update Cargo.lock dependencies

Full Changelog: 0.17.2...0.17.3

swiftide-v0.17.2

21 Jan 20:49
7a3bee8
Compare
Choose a tag to compare

Bug fixes

  • 47db5ab (agents) Redrive uses the correct pointer and works as intended

Full Changelog: 0.17.1...0.17.2

swiftide-v0.17.1

20 Jan 19:58
402dd1e
Compare
Choose a tag to compare

New features

  • e4e4468 (agents) Implement AgentContext for smart dyn pointers

  • 70181d9 (agents) Add pub accessor for agent context (#558)

  • 274d9d4 (agents) Preprocess tool calls to fix common, fixable errors (#560)

OpenAI has a tendency to sometimes send double keys. With this, Swiftide
  will now take the first key and ignore any duplicates after that. Sets the stage for any future preprocessing before it gets strictly parsed by serde.

swiftide-v0.17.0

16 Jan 16:45
Compare
Choose a tag to compare

New features

  • 835c35e (agents) Redrive completions manually on failure (#551)
Sometimes LLMs fail a completion without deterministic errors, or the
  user case where you just want to retry. `redrive` can now be called on a
  context, popping any new messages (if any), and making the messages
  available again to the agent.
  • f83f3f0 (agents) Implement ToolExecutor for common dyn pointers (#549)

  • 7f85735 (query) Add custom lancedb query generation for lancedb search (#518)

  • ce4e34b (tree-sitter) Add golang support (#552)

Seems someone conveniently forgot to add Golang support for the
  splitter.

Miscellaneous

  • 0000000 Update Cargo.lock dependencies

Full Changelog: 0.16.4...0.17.0

swiftide-v0.16.4

12 Jan 11:21
b33b4c8
Compare
Choose a tag to compare

New features

  • c919484 Ollama via async-openai with chatcompletion support (#545)
Adds support for chatcompletions (agents) for ollama. SimplePrompt and embeddings now use async-openai underneath.

  Copy pasted as I expect some differences in the future.

Miscellaneous

  • 0000000 Update Cargo.toml dependencies

Full Changelog: 0.16.3...0.16.4

swiftide-v0.16.3

10 Jan 21:59
edb94fe
Compare
Choose a tag to compare

New features

  • b66bd79 (fastembed) Add support for jina v2 code (#541)
Add support for jina v2 code in fastembed.

Full Changelog: 0.16.2...0.16.3

swiftide-v0.16.2

09 Jan 08:55
2ee2663
Compare
Choose a tag to compare

Bug fixes

  • 2226755 Explicit cast on tools to Box to make analyzer happy (#536)

Full Changelog: 0.16.1...0.16.2

swiftide-v0.16.1

06 Jan 22:25
a59dccf
Compare
Choose a tag to compare

Bug fixes

  • d198bb0 (prompts) Skip rendering prompts if no context and forward as is (#530)
Fixes an issue if strings suddenly include jinja style values by
  mistake. Bonus performance boost.
  • 4e8d59f (redb) Log errors and return uncached instead of panicing (#531)

Full Changelog: 0.16.0...0.16.1

swiftide-v0.16.0

04 Jan 12:36
Compare
Choose a tag to compare

New features

  • 52e341e (lancedb) Public method for opening table (#514)

  • 3254bd3 (query) Generic templates with document rendering (#520)

Reworks `PromptTemplate` to a more generic `Template`, such that they
  can also be used elsewhere. This deprecates `PromptTemplate`.

  As an example, an optional `Template` in the `Simple` answer
  transformer, which can be used to customize the output of retrieved
  documents. This has excellent synergy with the metadata changes in #504.
  • 235780b (query) Documents as first class citizens (#504)
For simple RAG, just adding the content of a retrieved document might be
  enough. However, in more complex use cases, you might want to add
  metadata as well, as is or for conditional formatting.

  For instance, when dealing with large amounts of chunked code, providing
  the path goes a long way. If generated metadata is good enough, could be
  useful as well.

  With this retrieved Documents are treated as first class citizens,
  including any metadata as well. Additionally, this also paves the way
  for multi retrieval (and multi modal).
  • 584695e (query) Add custom SQL query generation for pgvector search (#478)
Adds support for custom retrieval queries with the sqlx query builder for PGVector. Puts down the fundamentals for custom query building for any retriever.

  ---------
  • b55bf0b (redb) Public database and table definition (#510)

  • 176378f Implement traits for all Arc dynamic dispatch (#513)

If you use i.e. a `Persist` or a `NodeCache` outside swiftide as well, and you already have it Arc'ed, now it just works.
  • dc9881e Allow opt out of pipeline debug truncation

Bug fixes

  • 2831101 (lancedb) Metadata should be nullable in lancedb (#515)

  • c35df55 (macros) Explicit box dyn cast fixing Rust Analyzer troubles (#523)

Miscellaneous

Full Changelog: 0.15.0...0.16.0