ollama-ruby 0.4.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 29863f68627a05541de5eab810850b0509db94c1d91b2e9a5a9be9bd387e8aea
4
- data.tar.gz: 07f3558153a0a724c08e27a86482e0951070348bf25641d2a9feed113e3e7046
3
+ metadata.gz: bb7858cf04c638fa3369fe7d96d96eed12e5553fd17abe9ed48c1eaf25113ffb
4
+ data.tar.gz: ccb56d4b85a6e74256feb52ac5642d50850f7b980f9060dbb9fdf933985be746
5
5
  SHA512:
6
- metadata.gz: 11c405277b59c6acc75c24220942dd883bb7aec99d97d19bc9baf8d61aa4e5dc59af905631dc37641b91babdd9e5ab7305720a8720451db7b4bb6ca067833913
7
- data.tar.gz: 129f49e2d4b5cb65b7999f666f33798511b8a34b1be84bbc7bd4433872cd7c323812cd4dd3e8d2ae325cb013cfb6403db8181c8cbe641139469e5ea9821cc71d
6
+ metadata.gz: f36aacde399c0be934425f12669fa6cc55cdfad938ea8157c5195db8c2367243cc6470dff24ec5bf83800079732bfa271450a4779246335c45c2bedbb0e3a6cf
7
+ data.tar.gz: 56e465f056934210a6cc45677d52518d8adb76e8702561248b6db4cd1e4b129cfd22eedbdcc0c935f69bf85eeb9bc324aef6876f39969942af4529978a277756
data/.envrc CHANGED
@@ -1 +1,2 @@
1
1
  export REDIS_URL=redis://localhost:9736
2
+ export REDIS_EXPRING_URL=redis://localhost:9736
data/CHANGES.md CHANGED
@@ -1,5 +1,108 @@
1
1
  # Changes
2
2
 
3
+ ## 2024-09-26 v0.5.0
4
+
5
+ ### New Features
6
+
7
+ * Add stdin substitution and variable expansion to `ollama_cli`:
8
+ + Added support for `%{stdin}` in prompts, substituting with actual input
9
+ + Added `-P` option to set prompt variables from command line arguments
10
+ + Added handling of multiple placeholders in prompts
11
+ * Add proxy support to Ollama chat client:
12
+ + Add `tins/xt/hash_union` gem to dependencies
13
+ + Update `OllamaChatConfig` with new `proxy` option
14
+ + Modify `http_options` method to include proxy and SSL verify peer options
15
+ based on config settings
16
+ * Refactor source embedding logic:
17
+ + Simplified explicit case statement.
18
+ + Added `inputs or return` to ensure early exit when splitting cannot be
19
+ done
20
+ * Update Ollama chat script to embed, import or summarize sources:
21
+ + Added `require 'tins/xt/full'`
22
+ + Updated prompts in `OllamaChatConfig` to include embed prompt and
23
+ summarize prompt with word count option
24
+ + Modified `import_document` method to use `embed_source` instead of
25
+ importing document as a whole
26
+ + Added `embed_source` method to parse source content and add it to the
27
+ conversation via embeddings
28
+ + Updated `summarize` method to take an optional word count parameter
29
+ + Added `toggle_markdown` method to toggle markdown output on/off
30
+ + Added `show_embedding` method to display embedding status
31
+ + Updated `choose_collection` method to include new collection option
32
+ + Added `set_embedding` method to set embedding model and paused embedding
33
+ + Updated `info` method to display current model, collection stats, and
34
+ embedding status
35
+
36
+ ### Improvements
37
+
38
+ * Improve conversation listing command:
39
+ + Allow `list_conversation` method to take an optional argument for the
40
+ number of messages to display
41
+ + Added support for displaying a specific number of messages with `/list
42
+ [n]`
43
+ * Update chat commands' quit functionality:
44
+ + Moved `/quit` command to exit the program
45
+ * Refactor OllamaChatConfig web prompt:
46
+ + Add `web` prompt to `OllamaChatConfig` class
47
+ + Replace hardcoded content with variable `content`
48
+ + Use `query` and `results` variables instead of interpolating strings
49
+ * Add Redis cache expiration support:
50
+ + Added `ex` option to `initialize` method in
51
+ `lib/ollama/documents/cache/redis_cache.rb`
52
+ + Updated `[]=` method in `lib/ollama/documents/cache/redis_cache.rb` to
53
+ use Redis expiration
54
+ + Added `ttl` method in `lib/ollama/documents/cache/redis_cache.rb` to get
55
+ key TTL
56
+ * Update Redis and Redis-backed memory cache to use `object_class` parameter:
57
+ + Added `object_class` parameter to `RedisBackedMemoryCache` and
58
+ `RedisCache` constructors
59
+ + Updated tests in `redis_backed_memory_cache_spec.rb` and
60
+ `redis_cache_spec.rb` to reflect new behavior
61
+
62
+ ### Bug Fixes
63
+
64
+ * Update semantic splitter to use `include_separator` option from opts:
65
+ + Added flexibility by allowing `include_separator` option to be passed in
66
+ through opts
67
+ + Updated `include_separator` parameter to use
68
+ `opts.fetch(:include_separator, true)` instead of hardcoding value to
69
+ True.
70
+
71
+ ### Refactoring
72
+
73
+ * Refactor `file_argument.rb` for better readability:
74
+ + Update conditionals in Ollama::Utils::FileArgument module
75
+ + Simplify logic with improved variable usage
76
+ + Remove unnecessary elsif statement
77
+ + Use consistent indentation and spacing throughout the code
78
+ * Refactor Redis-backed memory cache:
79
+ + Removed `pre` and `unpre` methods from `Ollama::Documents` use mixin
80
+ instead.
81
+
82
+ ### Documentation
83
+
84
+ * Update README.md to reflect changes in `ollama_chat` functionality.
85
+ + Modified commands:
86
+ - `/import source` to import the source's content
87
+ - `/embed source` to embed the source's content
88
+ - `/summarize [n] source` to summarize the source's content in n words
89
+ - `/embedding` to toggle embedding paused or not
90
+ - `/embed source` to embed the source's content
91
+
92
+ ### Dependencies and Date Updates
93
+
94
+ * Update dependencies and date in gemspec:
95
+ + Added `logger` (~> **1.0**) and `json` (~> **2.0**) as runtime
96
+ dependencies to Rakefile and ollama-ruby.gemspec.
97
+ + Updated date in ollama-ruby.gemspec from "2024-09-21" to "2024-09-22".
98
+ + Added `require 'logger'` to lib/ollama.rb.
99
+
100
+ ### Other Changes
101
+
102
+ * Add SSL no verify option to OllamaChatConfig and Utils::Fetcher:
103
+ + Added `ssl_no_verify` option to OllamaChatConfig
104
+ + Updated Utils::Fetcher to take an
105
+
3
106
  ## 2024-09-21 v0.4.0
4
107
 
5
108
  ### Change Log for **1.2.3**
data/README.md CHANGED
@@ -45,7 +45,6 @@ ollama_chat [OPTIONS]
45
45
  -D DOCUMENT load document and add to collection (multiple)
46
46
  -M use (empty) MemoryCache for this chat session
47
47
  -E disable embeddings for this chat session
48
- -v use voice output
49
48
  -h this help
50
49
  ```
51
50
 
@@ -154,21 +153,28 @@ subject - the young, blue-eyed cat.
154
153
  The following commands can be given inside the chat, if prefixed by a `/`:
155
154
 
156
155
  ```
157
- /paste to paste content
158
- /markdown toggle markdown output
159
- /list list the messages of the conversation
160
- /clear clear the conversation messages
161
- /clobber clear conversation messages and collection
162
- /pop [n] pop the last n exchanges, defaults to 1
163
- /model change the model
164
- /regenerate the last answer message
165
- /collection clear [tag]|stats|change|new clear or show stats of current collection
166
- /summarize source summarize the URL/file source's content
167
- /web [n] query query web search & return n or 1 results
168
- /save filename store conversation messages
169
- /load filename load conversation messages
170
- /quit to quit
171
- /help to view this help
156
+ /copy to copy last response to clipboard
157
+ /paste to paste content
158
+ /markdown toggle markdown output
159
+ /stream toggle stream output
160
+ /voice( change) toggle voice output or change the voice
161
+ /list [n] list the last n / all conversation exchanges
162
+ /clear clear the whole conversation
163
+ /clobber clear the conversation and collection
164
+ /pop [n] pop the last n exchanges, defaults to 1
165
+ /model change the model
166
+ /system change system prompt (clears conversation)
167
+ /regenerate the last answer message
168
+ /collection clear [tag]|change clear or show stats of current collection
169
+ /import source import the source's content
170
+ /summarize [n] source summarize the source's content in n words
171
+ /embedding toggle embedding paused or not
172
+ /embed source embed the source's content
173
+ /web [n] query query web search & return n or 1 results
174
+ /save filename store conversation messages
175
+ /load filename load conversation messages
176
+ /quit to quit
177
+ /help to view this help
172
178
  ```
173
179
 
174
180
  ### ollama\_console
@@ -462,7 +468,7 @@ The homepage of this library is located at
462
468
 
463
469
  ## Author
464
470
 
465
- <b>Ollama</b> was written by Florian Frank [Florian Frank](mailto:flori@ping.de)
471
+ <b>Ollama Ruby</b> was written by Florian Frank [Florian Frank](mailto:flori@ping.de)
466
472
 
467
473
  ## License
468
474
 
data/Rakefile CHANGED
@@ -39,6 +39,9 @@ GemHadar do
39
39
  dependency 'search_ui', '~> 0.0'
40
40
  dependency 'amatch', '~> 0.4.1'
41
41
  dependency 'pdf-reader', '~> 2.0'
42
+ dependency 'logger', '~> 1.0'
43
+ dependency 'json', '~> 2.0'
44
+ dependency 'xdg', '~> 7.0'
42
45
  development_dependency 'all_images', '~> 0.4'
43
46
  development_dependency 'rspec', '~> 3.2'
44
47
  development_dependency 'webmock'