Releases: justyns/silverbullet-ai
0.4.1
No new features/fixes, just rebuilding to support the latest version of silverbullet which is using deno 2.
See https://community.silverbullet.md/t/0-10-1-released/1264
What's Changed
Full Changelog: 0.4.0...0.4.1
0.4.0
Lots of changes! See below, or on https://ai.silverbullet.md/Changelog/
Changelog
- Use a separate queue for indexing embeddings and summaries, to prevent blocking the main SB indexing thread
- Refactor to use JSR for most Silverbullet imports, and lots of related changes
- Reduced bundle size
- Add support for space-config
- Add support for [[Templated Prompts|Post Processor]] functions in [[Templated Prompts]].
- AICore Library: Updated all library files to have the meta tag.
- AICore Library: Add space-script functions to be used as post processors:
- indentOneLevel - Indent entire response one level deeper than the previous line.
- removeDuplicateStart - Remove the first line from the response if it matches the line before the response started.
- convertToBulletList - Convert response to a markdown list.
- convertToTaskList - Convert response to a markdown list of tasks.
- Add new insertAt options for [[Templated Prompts]]:
- replace-selection: Replaces the currently selected text with the generated content. If no text is selected, it behaves like the 'cursor' option.
- replace-paragraph: Replaces the entire paragraph (or item) where the cursor is located with the generated content.
- start-of-line: Inserts at the start of the current line.
- end-of-line: Inserts at the end of the current line.
- start-of-item: Inserts at the start of the current item (list item or task).
- end-of-item: Inserts at the end of the current item.
- new-line-above: Inserts on a new line above the current line.
- new-line-below: Inserts on a new line below the current line.
- replace-line: Replaces the current line with the generated content.
- replace-smart: Intelligently replaces content based on context (selected text, current item, or current paragraph).
- AICore Library: Add
aiSplitTodo
slash command and [[^Library/AICore/AIPrompt/AI Split Task]] templated prompt to split a task into smaller subtasks. - AICore Library: Add template prompts for rewriting text, mostly as a demo for the
replace-smart
insertAt option. - Remove need for duplicate
description
frontmatter field for templated prompts. - Revamp docs website to use mkdocs (and mkdocs-material) in addition to silverbullet-pub to handle the silverbullet-specific things like templates/queries.
What's Changed
- Use a separate queue for indexing embeddings and summaries, to prevent blocking the main SB indexing thread by @justyns in #61
- Upgrade SB imports to 0.9.4 by @justyns in #62
- Update denoland/setup-deno action to v1.4.1 by @renovate in #63
- Update actions/checkout action to v4 by @renovate in #64
- Update actions/configure-pages action to v5 by @renovate in #65
- Add support for Space Config by @justyns in #66
- Fix failing tests by @justyns in #67
- Additional insertAt options, add support for postprocessors to templated prompts by @justyns in #68
- Add more insertAt options by @justyns in #69
- Remove duplicate description field in aiPrompt templates by @justyns in #70
- Switch documentation to a combination of silverbullet-pub and mkdocs by @justyns in #71
- Fix render docs command by @justyns in #72
New Contributors
Full Changelog: 0.3.2...0.4.0
0.3.2
Adds Ollama text/llm provider as a wrapper around the existing openai provider so that provider: ollama
can be used instead of provider: openai
.
Full Changelog: 0.3.1...0.3.2
0.3.1
What's Changed
- Set searchEmbeddings to false by default
- Fix templated prompts not rendering as a template when not using chat-style prompts
- Add new searchEmbeddings function to AICore library for templates to use
Full Changelog: 0.3.0...0.3.1
0.3.0
What's Changed
- Don't index and generate embeddings for pages in Library/
- Add new [[Commands/AI: Enhance Note]] command to call existing
AI: Tag Note
andAI: Suggest Page Name
commands on a note, and the new frontmatter command - Add new [[Commands/AI: Generate Note FrontMatter]] command to extract useful facts from a note and add them to the frontmatter
- Always include the note’s current name in [[Commands/AI: Suggest Page Name]] as an option
- Log how long it takes to index each page when generating embeddings
- Improve the layout and UX of the [[Commands/AI: Search]] page
- Fix the
AI: Search
page so it works in sync/online mode, requires Silverbullet >= 0.8.3 - Fix bug preventing changing models in sync mode
- Add [[Templated Prompts#Chat-style prompts|Chat-style prompts]] support in Templated Prompts
- Fix bug when embeddingModels is undefined, and generateEmbeddings to run when it shouldn't
Full Changelog: 0.2.0...0.3.0
0.2.0
This release includes Vector Embeddings! embeddingModels can now be configured in SETTINGS. Assuming it is configured and indexEmbeddings
is enabled, then embeddings will automatically be generated and indexed whenever a page changes.
These vector embeddings are used for similarity/semantic search by the new "AI: Search" command. They are also be used to provide additional RAG context to chats.
Please see https://ai.silverbullet.md/Configuration/Embedding%20Models/ for examples and configuration.
What's Changed
- Vector search and embeddings generation by @justyns in #37
- Enrich chat messages with RAG by searching our local embeddings by @justyns in #38
- Refactor: Re-organize providers, interfaces, and types by @justyns in #39
- Add try/catch to tests by @justyns in #40
- Fix bug causing silverbullet to break when aiSettings isn't configured at all by @justyns in #42
- Add option to generate summaries of each note and index them. by @justyns in #43
- Disable indexing on clients, index only on server by @justyns in #44
- Set index and search events to server only by @justyns in #45
Full Changelog: 0.1.0...0.2.0
0.1.0
This release contains a few bug fixes, and a couple new features, like the new AI: Suggest Page Name command seen below.
Also finally bumped the version to 0.1.0 and will start following Semantic Versioning from now.
What's Changed
- BREAKING: Removed deprecated parameters: summarizePrompt, tagPrompt, imagePrompt, temperature, maxTokens, defaultTextModel, backwardsCompat. Except for defaultTextModel, these were no longer used.
- Add page rename command by @justyns in #29
- Bake queries and templates in chat by @justyns in #30
- Allow completely overriding page rename system prompt, improve ux by @justyns in #31
- Always select a model if it's the only one in the list by @justyns in #33
- Pass all existing tags to generate tag command, allow user to add their own instructions too
Full Changelog: 0.0.11...0.1.0
0.0.11
What's Changed
- Support for custom chat message enrichment functions, see https://ai.silverbullet.md/Configuration/Custom%20Enrichment%20Functions/ for details
Full Changelog: 0.0.10...0.0.11
0.0.10
We now have some docs at https://ai.silverbullet.md ! It should cover everything the readme has, but still needs some work.
What's Changed
- Add WIP docs and docs workflow by @justyns in #20
- Enable slash completion for ai prompts
- Dont die if clientStore.get doesnt work, like in cli mode
Full Changelog: 0.0.9...0.0.10
0.0.9 - multiple model support!
The biggest feature in this release is that you can now configure multiple models in SETTINGS and switch between them on the fly. This includes switching from a locally hosted llm to openai and back.
Please let me know if you run into any issues upgrading. The config format is different, but the old format should work until you decide to update to a multi-model config.
What's Changed
- Add github action for deno build-release by @justyns in #18
- Add ability to configure multiple text and image models, and switch between them by @justyns in #17
- Fix error when imageModels is undefined in SETTINGS by @justyns in #22
- Re-add summarizeNote and insertSummary commands, fixes #19. Also add non-streaming support to gemini by @justyns in #24
Full Changelog: 0.0.8...0.0.9