mirror of
https://github.com/carlrobertoh/ProxyAI.git
synced 2026-05-10 12:10:14 +00:00
refactor: consolidate completion request building (#703)
* fix: direct apply and output diff actions visibility * refactor: consolidate chat completion request building
This commit is contained in:
parent
d65a512f0d
commit
403ab338f9
27 changed files with 1698 additions and 1530 deletions
|
|
@ -1,6 +1,5 @@
|
|||
package ee.carlrobert.codegpt.toolwindow.chat;
|
||||
|
||||
import static ee.carlrobert.codegpt.completions.CompletionRequestProvider.getPromptWithContext;
|
||||
import static ee.carlrobert.codegpt.ui.UIUtil.createScrollPaneWithSmartScroller;
|
||||
import static java.lang.String.format;
|
||||
|
||||
|
|
@ -18,6 +17,7 @@ import ee.carlrobert.codegpt.actions.ActionType;
|
|||
import ee.carlrobert.codegpt.completions.CallParameters;
|
||||
import ee.carlrobert.codegpt.completions.CompletionRequestHandler;
|
||||
import ee.carlrobert.codegpt.completions.CompletionRequestService;
|
||||
import ee.carlrobert.codegpt.completions.CompletionRequestUtil;
|
||||
import ee.carlrobert.codegpt.completions.ConversationType;
|
||||
import ee.carlrobert.codegpt.conversations.Conversation;
|
||||
import ee.carlrobert.codegpt.conversations.ConversationService;
|
||||
|
|
@ -134,7 +134,8 @@ public class ChatToolWindowTabPanel implements Disposable {
|
|||
.toList();
|
||||
message.setReferencedFilePaths(referencedFilePaths);
|
||||
message.setUserMessage(message.getPrompt());
|
||||
message.setPrompt(getPromptWithContext(referencedFiles, message.getPrompt()));
|
||||
message.setPrompt(
|
||||
CompletionRequestUtil.getPromptWithContext(referencedFiles, message.getPrompt()));
|
||||
|
||||
totalTokensPanel.updateReferencedFilesTokens(referencedFiles);
|
||||
|
||||
|
|
@ -300,21 +301,22 @@ public class ChatToolWindowTabPanel implements Disposable {
|
|||
}
|
||||
promptBuilder.append(remainingText);
|
||||
|
||||
String highlightedTextMd = "";
|
||||
String selectedText = "";
|
||||
String selectedTextMd = "";
|
||||
if (editor != null) {
|
||||
var selectionModel = editor.getSelectionModel();
|
||||
var selectedText = selectionModel.getSelectedText();
|
||||
selectedText = selectionModel.getSelectedText();
|
||||
if (selectedText != null && !selectedText.isEmpty()) {
|
||||
var fileExtension = FileUtil.getFileExtension(editor.getVirtualFile().getName());
|
||||
highlightedTextMd = format("\n```%s\n%s\n```\n", fileExtension, selectedText);
|
||||
selectedTextMd = format("\n```%s\n%s\n```\n", fileExtension, selectedText);
|
||||
selectionModel.removeSelection();
|
||||
}
|
||||
}
|
||||
|
||||
message.setUserMessage(highlightedTextMd + promptBuilder);
|
||||
message.setPrompt(highlightedTextMd + promptBuilder);
|
||||
message.setUserMessage(selectedTextMd + promptBuilder);
|
||||
message.setPrompt(selectedTextMd + promptBuilder);
|
||||
|
||||
sendMessage(message, ConversationType.DEFAULT, processEditorSelection(editor, message));
|
||||
sendMessage(message, ConversationType.DEFAULT, selectedText);
|
||||
return Unit.INSTANCE;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue