Commit graph

281 commits

Author SHA1 Message Date
Phil
143fea57fa fix: refresh Ollama models only when service is changed to Ollama (#536) 2024-05-13 15:57:48 +03:00
Phil
a173840ee5 Revert "fix: use /infill for llama.cpp code-completions (#513)" (#533)
This reverts commit 8de72b3301.
2024-05-13 15:57:40 +03:00
Rene Leonhardt
d743b60bfe feat: Support CodeQwen1.5-Chat model (#527)
* feat: Support CodeQwen1.5-Chat model

* Declare model directories explicitly
2024-05-13 15:57:13 +03:00
Jack Boswell
5fb6589dc6 feat: Implement Ollama as a high-level service (#510)
* Initial implementation of Ollama as a service

* Fix model selector in tool window

* Enable image attachment

* Rewrite OllamaSettingsForm in Kt

* Create OllamaInlineCompletionModel and use it for building completion template

* Add support for blocking code completion on models that we don't know support it

* Allow disabling code completion settings

* Disable code completion settings when an unsupported model is entered

* Track FIM template in settings as a derived state

* Update llm-client

* Initial implementation of model combo box

* Add Ollama icon and display models as list

* Make OllamaSettingsState immutable & convert OllamaSettings to Kotlin

* Add refresh models button

* Distinguish between empty/needs refresh/loading

* Avoid storing any model if the combo box is empty

* Fix icon size

* Back to mutable settings
There were some bugs with immutable settings

* Store available models in settings state

* Expose available models in model dropdown

* Add dark icon

* Cleanups for CompletionRequestProvider

* Fix checkstyle issues

* refactor: migrate to SimplePersistentStateComponent

* fix: add code completion stop tokens

* fix: display only one item in the model popup action group

* fix: add back multi model selection

---------

Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2024-05-13 15:57:00 +03:00
Phil
7b386686b0 fix: CustomService Test connection with correct settings (#531) 2024-05-13 15:55:28 +03:00
Carl-Robert Linnupuu
43ec887b17 fix: build 2024-05-13 15:55:22 +03:00
Phil
b70aad9980 fix: Storing HuggingFaceModel by modelName instead of quantization only (#529) 2024-05-13 15:55:17 +03:00
Phil
98ae7698e4 feat: add Mistral AI service template (#532) 2024-05-13 15:55:12 +03:00
Phil
908d8b9286 feat: add CodeGemma InfillPromptTemplate (#530) 2024-05-13 15:55:08 +03:00
Rene Leonhardt
af2391ac9a feat: Support CodeGemma 7b Instruct model (#524) (#525) 2024-05-13 15:55:02 +03:00
Jack Boswell
c37f02b6ad refactor: Expand and explicitly handle cases where a ServiceType is checked (#521)
This streamlines changes to ServiceType, where any additions or removals will be flagged at compile time to be handled, instead of silently falling back to a default value.
2024-05-13 15:54:54 +03:00
Phil
da0f9a189e fix: add optional Git4Idea dependency to plugin.xml (#526) 2024-05-13 15:54:12 +03:00
Rene Leonhardt
f557d02748 feat: Support Phi-3 Mini model (#516) 2024-05-13 15:54:06 +03:00
Phil
5cd9531246 fix: focus on new editor action and refresh editor actions on apply (#518) 2024-05-13 15:54:00 +03:00
Phil
1842c98084 fix: use /infill for llama.cpp code-completions (#513) 2024-05-13 15:53:46 +03:00
Carl-Robert Linnupuu
28aac5a369 fix: commit message generation for custom openai services (closes #496) 2024-05-13 15:52:53 +03:00
Rene Leonhardt
10b8535347 fix: NPE when using unsupported model for code completions (#499) 2024-05-13 15:52:48 +03:00
Rene Leonhardt
f7ce60e1a4 feat: Add Llama 3 download sizes (#498) 2024-05-13 15:52:44 +03:00
Carl-Robert Linnupuu
b0ba7f998e fix: kotlin build interoperability 2024-04-22 12:20:36 +03:00
Carl-Robert Linnupuu
86cc6f08f0 fix: compatibility issues 2024-04-22 00:16:21 +03:00
Carl-Robert Linnupuu
ff528e91e0 fix: build errors 2024-04-22 00:07:39 +03:00
Carl-Robert Linnupuu
69dc2ea9fc fix: llama server success callback trigger 2024-04-22 00:00:41 +03:00
Carl-Robert Linnupuu
477d51ce7c fix: llama3 prompt 2024-04-22 00:00:35 +03:00
Rene Leonhardt
649e7c93c9 feat: Upgrade submodule for Llama 3 support (#483) 2024-04-21 23:58:10 +03:00
Carl-Robert Linnupuu
1423ebf2a5 fix: custom service settings sync 2024-04-21 23:48:04 +03:00
Rene Leonhardt
fe06f559b3 feat: Support Llama 3 model (#479)
* feat: Support Llama 3 model (#478)

* Use new InfillPrompt

* Switch to lmstudio-community

* Use new Prompt

* llama.cpp removed the BOS token
https://github.com/ggerganov/llama.cpp/pull/6751/commits/a55d8a9348fc9e9215229bf03f96ecff4dcc7c91

* Add tests

* I would prefer a stream based solution

* Add 70B models

* Add tests for skipping blank system prompt

* Remove InfillPrompt for now
2024-04-21 23:47:55 +03:00
Simon Svensson
2eb21ea295 feat: code completion for "Custom OpenAI Service" (#476)
* Add code completion setting states for custom service

* Add settings for code completion in Custom OpenAI service

* Move code completion section to the bottom

* Create test testFetchCodeCompletionCustomService

* Add Custom OpenAI to the "Enable/Disable Completion" actions

* New configuration UI separating /v1/chat/completions from /v1/completions

* Code completion for Custom Service

* Formatting fixes

* Move prefix and suffix to templates in body

* Message updates

* New tabbed UI for Chat and Code Completions

* convert to kotlin, improve ui and other minor changes

* fix test connection for chat completions

* add help tooltips

* allow backward compatibility

* support prefix and suffix placeholders

* fix initial state loading

---------

Co-authored-by: Jack Boswell (boswelja) <boswelja@outlook.com>
Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2024-04-21 23:47:25 +03:00
Phil
98d28f3fc6 feat: add input field for llama server build parameters and improve error handling (#481) 2024-04-21 23:43:53 +03:00
Rene Leonhardt
f02e3cedbe fix: Telemetry can't serialize traits anymore (#477)
* fix: Telemetry can't serialize traits anymore

* Add tests
2024-04-21 23:42:52 +03:00
Phil
5e297e4d87 feat: add include file in context to editor context menu (#475)
* feat: add include file in context to editor context menu

* fix: custom title for IncludeFilesInContextAction in editor context menu
2024-04-21 23:42:45 +03:00
Rene Leonhardt
11881f23e8 chore: Convert utils to Kotlin (#473)
* chore: Convert utils to Kotlin

* Remove nullable operators
2024-04-21 23:42:37 +03:00
Rene Leonhardt
d94865be8a fix: High CPU usage in new files check (#446) (#474)
* fix: High CPU usage in new files check (#446)

* Resolve absolute path
2024-04-21 23:42:24 +03:00
Carl-Robert Linnupuu
e4c06fb851 fix: file watcher disposable by making it project-level service 2024-04-21 23:40:29 +03:00
Simon Svensson
bd1b85fc3e fix: custom OpenAI service settings sync (#472) 2024-04-21 23:37:56 +03:00
Simon Svensson
eee497b108 Persist credentials back into the PasswordSafe (#465) 2024-04-21 23:37:50 +03:00
René
74a4f01e6c feat: add support for placeholders in prompts (#458)
* fixes #432 adds support for Placeholders in Prompts

- activate gradle plugin Git4Idea
- adds PlaceholderUtil
- adds DATE_ISO_8601 PlaceholderReplacer
- adds BRANCH_NAME PlaceholderReplacer

* convert to kotlin, improve ui and add int. test

* fix: do not reuse projects from previous test runs

---------

Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2024-04-21 23:37:43 +03:00
Rene Leonhardt
6454773946 fix: Use System Prompt from user configuration (#454) (#455) 2024-04-15 16:05:31 +03:00
Carl-Robert Linnupuu
7e92291b26 fix: compatibility problems 2024-04-12 18:20:37 +03:00
Carl-Robert Linnupuu
b6be76f40c fix: temporarily disable tree-sitter logic (fixes #452) 2024-04-12 17:40:21 +03:00
Rene Leonhardt
4c466e4618 fix: Use correct setting for updates and screenshot checkboxes (#446) (#451) 2024-04-12 17:37:23 +03:00
Rene Leonhardt
438de05903 chore: Convert Java tests to Kotlin (#447) 2024-04-12 17:36:07 +03:00
Rene Leonhardt
e4e98466cf fix: Catch AssertionError in countTokens() (#445) 2024-04-12 17:34:05 +03:00
Rene Leonhardt
ba7b51684e chore: Improve code (#442)
* chore: Improve code

* Convert classes to records
2024-04-12 17:33:56 +03:00
Rene Leonhardt
f7702286f3 Update to latest 233 platform 2023.3.6 (#439)
* Update to latest 233 platform 2023.3.6

* Use first non-blank choice from response
2024-04-12 17:31:59 +03:00
Carl-Robert Linnupuu
a677d8c455 fix: compatibility problems 2024-04-10 15:32:52 +03:00
Carl-Robert Linnupuu
f0c74c04dd Revert "fix: correctly handle changed files to generate a commit message #338 (#433)"
This reverts commit 9ed95f4e4e.
2024-04-10 15:12:39 +03:00
Rene Leonhardt
8fad64eb57 chore(deps): Update checkstyle to 10.15.0 (#438)
* Cleaned versions catalog and dependencies
* Fixed checkstyle finding
2024-04-07 17:13:17 +03:00
Carl-Robert Linnupuu
662e9986b2 refactor: remove 'Standard' prefix from toolwindow component class names, and other minor cleanup 2024-04-07 17:12:56 +03:00
Rene Leonhardt
dbf05aebc6 chore(deps): Update and centralize dependencies (#436)
* chore(deps): Update and centralize dependencies

* Update treesitter to 0.22.2
* Update kotlin to 1.9.23
* Update jackson to 2.17.0
* Update gradle-intellij-plugin to 1.17.3
* Update gradle to 8.7
* Use BOMs where possible
* Centralize dependencies in version catalog
* Allow Dependabot to update other modules (add treesitter and buildSrc/src/main/kotlin, remove core)

* fix: preload credentials only once for all headers
2024-04-07 17:12:50 +03:00
Carl-Robert Linnupuu
bce33a9196 fix: use the proper callback for text area autofocus 2024-04-07 17:12:40 +03:00