Commit graph

76 commits

Author SHA1 Message Date
Carl-Robert Linnupuu
df14b88617 feat: add the latest OpenAI chat models 2024-02-06 18:49:30 +02:00
Phil
7387cf4536
Inline Autocompletion Pt.2 (#333)
* Add first draft of inline code completion with mock text

* Adds InsertInlineTextAction for inserting autocomplete suggestion with tab

- Changed to disable suggestions when text is selected
- Adds and removes the insert action based on when it shows the inlay hint

* Request inline code completion

* Move inline completion prompt into txt file

* Add inline completion settings to ConfigurationState

* Fix code style

* Use EditorTrackerListener instead of EditorFactoryListener to enable inline completion

* Code completion requests synchronously without SSE

* Use LlamaClient.getInfill() for inline code completion

* support inlay block element rendering, clean up code

* Use only enclosed Method or Class contents for code completion if possible

* Refactor extracting PsiElement contents in code completion

* bump llm-client

* fix completion call from triggering on EDT, force method params to be nonnull by default

* refactor request building, decrease delay value

* Trigger code completion if cursor is not inside a word

* Improve inlay rendering

* Support cancellable infill requests

* add statusbar widget, disable completions by default

* Show error notification if code completion failed

* Truely disable/enable EditorInlayHandler when completion is turned off/on

* Add CodeCompletionEnabledListener Topic to control enabling/disabling code-completion

* Add progress indicator for code-completion with option to cancel

* Add CodeCompletionServiceTest + refactor inlay ElementRenderers

* several improvements

- replace timer implementation with call debouncing
- use OpenAI /v1/completions API for completions
- code refactoring

* trigger progress indicator only for llama completions

* fix tests

---------

Co-authored-by: James Higgins <james.isaac.higgins@gmail.com>
Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2024-01-31 01:05:31 +02:00
Carl-Robert
f831a1facd
feat: add support for auto resolving compilation errors (#318) 2023-12-29 16:41:47 +02:00
Carl-Robert Linnupuu
6824fbeb3b feat: replace editor pane with action links 2023-12-13 16:52:35 +02:00
Carl-Robert
f4be25bdac
Feature: Support chatting with multiple files (#306)
* Initial implementation

* Refactor UI related classes and organize imports

* Display selected files notification, include the files in the prompt

* feat: store referenced file paths in the messate state

* feat: add selected files accordion

* feat: update UI

* feat: improve file selection

* feat: support prompt template configuration

* fix: token calculation for virtualfile checkbox tree

* refactor: clean up

* refactor: move labels/descriptions to bundle
2023-12-12 22:30:39 +02:00
Carl-Robert Linnupuu
c36d4dd566 fix: redundant chat tab creation on provider change 2023-12-08 03:05:01 +02:00
Carl-Robert Linnupuu
cfe89fccb7 refactor: remove you.com coupon 2023-12-08 02:32:49 +02:00
Carl-Robert Linnupuu
425b0cd58b refactor: improve llm-client code modularity 2023-12-07 21:48:12 +02:00
Carl-Robert Linnupuu
dc2cc3c5a1 fix: UI concurrency issues (run completion events on EDT) 2023-12-01 00:32:52 +02:00
Carl-Robert Linnupuu
8d4189c503 Minor clean up 2023-11-26 22:03:49 +02:00
Carl-Robert Linnupuu
01963e2faa Support additional command-line params for the server startup process 2023-11-26 13:21:02 +02:00
Carl-Robert
1df20ccb86
Update toolwindow UI (#290) 2023-11-26 10:52:47 +02:00
Carl-Robert Linnupuu
ac39a863d1 Fix chat response JTextPane caret visibility 2023-11-22 02:10:48 +02:00
Carl-Robert
2317b54d56
272 - Fix editor actions when createNewChatOnEachAction cfg is turned on (#283) 2023-11-22 00:22:36 +02:00
Carl-Robert Linnupuu
ecf6ac02ed Disable tool window chat editor when initially displayed 2023-11-21 23:09:31 +02:00
Carl-Robert Linnupuu
53bdbcd4f5 Remove Quartz Scheduler, You.com model change topic, theme utils, and include other basic refactoring 2023-11-21 22:47:09 +02:00
Carl-Robert
c4115e257b
Add checkstyle rules (#274) 2023-11-16 17:15:11 +02:00
Carl-Robert Linnupuu
318dd4286a Fix minor issues related to total tokens calculation 2023-11-15 00:44:13 +02:00
Carl-Robert Linnupuu
346218b512 Clean up code 2023-11-14 16:20:59 +02:00
Carl-Robert Linnupuu
ec3120a5e6 Add interactive total token count label, codebase refactoring 2023-11-14 13:27:15 +02:00
Carl-Robert Linnupuu
d8e5e18998 Expand/Collapse logic for toolwindow editors 2023-11-10 15:06:22 +02:00
Carl-Robert Linnupuu
c3da76f2bd Clean up BaseChatToolWindowTabPanel code 2023-11-09 18:43:05 +02:00
Carl-Robert
cfa5ff7776
Use enum value to store selected service (#265) 2023-11-08 19:17:25 +02:00
Carl-Robert
1e4c1e3ca9
Bump llm-client, remove credentials validation for llama service (#263) 2023-11-07 16:37:55 +02:00
Carl-Robert
45908e69df
#178 - Add support for running local LLMs via LLaMA C/C++ port (#249)
* Initial implementation of integrating llama.cpp to run LLaMA models locally

* Move submodule

* Copy llama submodule to bundle

* Support for downloading models from IDE

* Code cleanup

* Store port field

* Replace service selection radio group with dropdown

* Add quantization support + other fixes

* Add option to override host

* Fix override host handler

* Disable port field when override host enabled

* Design updates

* Fix llama settings configuration, design changes, clean up code

* Improve You.com coupon design

* Add new Phind model and help tooltip

* Fetch you.com subscription

* Add CodeBooga model, fix downloadable model selection

* Chat history support

* Code refactoring, minor bug fixes

* UI updates, several bug fixes, removed code llama python model

* Code cleanup, enable llama port only on macOS

* Change downloaded gguf models path

* Move some of the labels to codegpt bundle

* Minor fixes

* Remove ToRA model, add help texts

* Fix test

* Modify description
2023-11-03 12:00:24 +02:00
Carl-Robert
3f67be5f78
You.com service updates (#246)
* Free GPT4 for a month to try

* Free GPT4 for a month to try

* Better tooltip

* Replace toggle component with checkbox and other minor ui improvements

* Add UTM and userId params to You.com completion request

* Fix #145 - web serach results not being displayed despite the flag

---------

Co-authored-by: siilats <keith@siilats.com>
2023-10-26 02:13:44 +03:00
keith siilats
4519b2ade6
Make it clear that you.com is free in case people run out of OpenAI credits (#238)
* Make it clear that you.com is free in case people run out of OpenAI credits

* Clear quota exceeded flag on new api key, minor refactoring

---------

Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2023-10-17 10:50:20 +03:00
Carl-Robert
21fa61d2af
Support you.com gpt-4 model (#233) 2023-10-12 11:18:37 +03:00
TautCony
0343842af9
set line wrap style to be wrapped at word boundaries (#230) 2023-10-10 23:07:21 +03:00
Carl-Robert
7dfe62b96d
Codebase refactoring (#226)
* Refactor codebase
2023-10-05 02:43:06 +03:00
keith siilats
4c8b8d4e4f
on quota exceeded suggest user switch to different LLM provider (#221)
* on quota exceeded suggest user switch to different LLM provider

* Improve insufficient quota handling, add more telemetry actions

---------

Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2023-10-05 00:18:50 +03:00
Carl-Robert Linnupuu
b4881be72a Add default value for destination text field 2023-10-03 00:33:54 +03:00
wangwangxf
8269ba371c
210 - Add diff function (#213)
* Add diff function

* modify writeSpace

* Remove unnecessary code

* Add telemetry for toolwindow editor actions

---------

Co-authored-by: wang <1625116638@qq.com>
Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2023-10-02 11:24:09 +03:00
Carl-Robert
7ff48dc928
Ability to edit generated code (#220)
* Ability to edit generated code inside the chat toolwindow

* Improve icon behaviour

* Fix browseFolderListener automatic disposal by recreating the inputs on each action

* Replace label
2023-10-01 03:59:32 +03:00
Carl-Robert Linnupuu
d85606bfeb Merge branch 'master' of github.com:carlrobertoh/CodeGPT 2023-09-30 02:05:44 +03:00
Carl-Robert
e417ac8a03
Ability to create new files from codegpt toolwindow editor (#219) 2023-09-30 01:40:37 +03:00
Carl-Robert Linnupuu
e95b5ba175 Code refactoring 2023-09-29 11:48:31 +03:00
Carl-Robert Linnupuu
b35daaae88 Fix error logging and add more telemetry actions 2023-09-28 17:08:31 +03:00
Carl-Robert
f502e3b43c
194 - Proper use of project-level light service (#216) 2023-09-28 00:45:10 +03:00
keith siilats
8f9980fbf1
anymous telemetry based on redhat (#212)
* initial telemetry

* fixed segment bugs

* Move telemetry impl to submodule, add more actions

* Replace privacy policy link, minor refactoring

---------

Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2023-09-27 18:44:01 +03:00
Carl-Robert
37af74ebdf
You API integration (#203)
* Ability to configure custom service

* Add example preset templates, rename module

* Custom service client impl

* Add YOU API integration

* Remove/ignore generated antlr classes

* Remove text completion models(deprecated)

* Remove unused code, fix settings state sync

* Display model name/icon in the tool window

* Update chat history UI

* Fix model/service sync

* Clear plugin state

* Fix minor bugs, add settings sync tests

* UI changes

* Separate model configuration

* Add support for overriding the completion path

* Update Find Bugs prompt
2023-09-14 14:52:18 +03:00
keith siilats
a860054360
Update EditorAction.java (#202)
add and output code with bugs fixed to the prompt
2023-09-13 17:53:47 +03:00
Carl-Robert
ef5fd5919f
Encapsulate settings (#180) 2023-08-27 18:16:08 +03:00
Carl-Robert
3c2c23b3ea
Move embeddings impl to a different module (#179)
* Move embeddings impl to a different module
* Disable plugin verifier for sub modules
2023-08-26 12:55:32 +03:00
Carl-Robert Linnupuu
26a3e07360 Reopen plugin's source code (1.10.8 → 2.0.5) 2023-08-25 16:36:22 +03:00
Carl-Robert Linnupuu
0eba3a16af 1.10.8 - Ability to use custom server/models, support api key retrieval from env var (closes #90) 2023-05-17 22:59:50 +01:00
Carl-Robert Linnupuu
31fee06d1c 1.10.7 - Add keymap support for plugin actions (closes #63), support off-screen browser rendering 2023-05-04 23:08:31 +01:00
Carl-Robert Linnupuu
4ceca4e45e Add tests and build workflow, bump sinceVersion 2023-05-01 14:08:49 +01:00
Carl-Robert Linnupuu
7adb65a286 Sync model settings on tab change 2023-04-22 10:28:25 +01:00
Carl-Robert Linnupuu
1e64186450 Make display name configurable (closes #89) 2023-04-21 23:29:53 +01:00