mirror of
https://github.com/carlrobertoh/ProxyAI.git
synced 2026-05-04 22:51:26 +00:00
refactor: remove max_tokens configuration and other minor fixes
This commit is contained in:
parent
0b21652c04
commit
014f26f802
23 changed files with 219 additions and 259 deletions
|
|
@ -1,7 +1,6 @@
|
|||
package ee.carlrobert.codegpt.treesitter;
|
||||
|
||||
import org.treesitter.TSLanguage;
|
||||
import org.treesitter.TSNode;
|
||||
import org.treesitter.TSParser;
|
||||
import org.treesitter.TSTree;
|
||||
|
||||
|
|
@ -16,7 +15,7 @@ public class CodeCompletionParser {
|
|||
public String parse(String prefix, String suffix, String output) {
|
||||
var result = new StringBuilder(output);
|
||||
while (!result.isEmpty()) {
|
||||
if (containsSyntaxErrors(prefix + result + suffix)) {
|
||||
if (containsError(prefix + result + suffix)) {
|
||||
result.deleteCharAt(result.length() - 1);
|
||||
} else {
|
||||
return result.toString();
|
||||
|
|
@ -30,21 +29,11 @@ public class CodeCompletionParser {
|
|||
return output;
|
||||
}
|
||||
|
||||
private boolean containsSyntaxErrors(String input) {
|
||||
return containsSyntaxErrors(getTree(input).getRootNode());
|
||||
}
|
||||
|
||||
private boolean containsSyntaxErrors(TSNode node) {
|
||||
if (node.isMissing() || node.hasError()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
for (int i = 0; i < node.getChildCount(); i++) {
|
||||
if (containsSyntaxErrors(node.getChild(i))) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
private boolean containsError(String input) {
|
||||
var treeString = getTree(input).getRootNode().toString();
|
||||
return treeString.contains("ERROR")
|
||||
|| treeString.contains("MISSING \"}\"")
|
||||
|| treeString.contains("MISSING \")\"");
|
||||
}
|
||||
|
||||
private TSTree getTree(String input) {
|
||||
|
|
|
|||
|
|
@ -9,17 +9,17 @@ public class CodeCompletionParserTest {
|
|||
@Test
|
||||
public void shouldGetValidReturnValue() {
|
||||
var prefix = """
|
||||
class Main {
|
||||
public int getRandomNumber() {
|
||||
return\s""";
|
||||
class Main {
|
||||
public int getRandomNumber() {
|
||||
return\s""";
|
||||
var suffix = """
|
||||
|
||||
}
|
||||
}""";
|
||||
}
|
||||
}""";
|
||||
var output = """
|
||||
10;}
|
||||
}
|
||||
public int getRandomNumber(int k) {""";
|
||||
10;}
|
||||
}
|
||||
public int getRandomNumber(int k) {""";
|
||||
|
||||
var parsedResponse = CodeCompletionParserFactory
|
||||
.getParserForFileExtension("java")
|
||||
|
|
@ -31,16 +31,16 @@ public class CodeCompletionParserTest {
|
|||
@Test
|
||||
public void shouldGetValidParenthesisValue() {
|
||||
var prefix = """
|
||||
class Main {
|
||||
public int getRandomNumber(int\s""";
|
||||
class Main {
|
||||
public int getRandomNumber(int\s""";
|
||||
var suffix = """
|
||||
) {
|
||||
return 10;
|
||||
}
|
||||
}""";
|
||||
) {
|
||||
return 10;
|
||||
}
|
||||
}""";
|
||||
var output = """
|
||||
prevNumber) {
|
||||
if() {""";
|
||||
prevNumber) {
|
||||
if() {""";
|
||||
|
||||
var parsedResponse = CodeCompletionParserFactory
|
||||
.getParserForFileExtension("java")
|
||||
|
|
@ -49,41 +49,16 @@ public class CodeCompletionParserTest {
|
|||
assertThat(parsedResponse).isEqualTo("prevNumber");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldHandleFieldDeclaration() {
|
||||
var prefix = """
|
||||
class Main {
|
||||
\t
|
||||
private i""";
|
||||
var suffix = """
|
||||
|
||||
|
||||
public int getRandomNumber(int prevNumber) {
|
||||
return Math.of()
|
||||
}
|
||||
}""";
|
||||
var output = """
|
||||
nt randomNumber;
|
||||
\s
|
||||
public void get() {""";
|
||||
|
||||
var result = CodeCompletionParserFactory
|
||||
.getParserForFileExtension("java")
|
||||
.parse(prefix, suffix, output);
|
||||
|
||||
assertThat(result).isEqualTo("nt randomNumber;");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldHandleFormalParameters() {
|
||||
var prefix = """
|
||||
class Main {
|
||||
public int getRandomNumber(""";
|
||||
class Main {
|
||||
public int getRandomNumber(""";
|
||||
var suffix = """
|
||||
) {
|
||||
return 10;
|
||||
}
|
||||
}""";
|
||||
) {
|
||||
return 10;
|
||||
}
|
||||
}""";
|
||||
var output = "int prevNumber) }";
|
||||
|
||||
var result = CodeCompletionParserFactory
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue