mirror of
https://github.com/SilasMarvin/lsp-ai.git
synced 2025-12-17 22:44:24 +01:00
83 lines
3.0 KiB
TOML
83 lines
3.0 KiB
TOML
##############################
|
|
## Configuration for lsp-ai ##
|
|
##############################
|
|
|
|
[language-server.lsp-ai]
|
|
command = "lsp-ai"
|
|
|
|
[language-server.lsp-ai.config.memory]
|
|
file_store = { }
|
|
|
|
[language-server.lsp-ai.config.models.model1]
|
|
type = "open_ai"
|
|
chat_endpoint = "https://api.openai.com/v1/chat/completions"
|
|
model = "gpt-4o"
|
|
auth_token_env_var_name = "OPENAI_API_KEY"
|
|
|
|
[language-server.lsp-ai.config.completion]
|
|
model = "model1"
|
|
|
|
[language-server.lsp-ai.config.completion.parameters]
|
|
max_tokens = 64
|
|
max_context = 1024
|
|
|
|
## Configure the messages per your needs
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "system"
|
|
content = "Instructions:\n- You are an AI programming assistant.\n- Given a piece of code with the cursor location marked by \"<CURSOR>\", replace \"<CURSOR>\" with the correct code or comment.\n- First, think step-by-step.\n- Describe your plan for what to build in pseudocode, written out in great detail.\n- Then output the code replacing the \"<CURSOR>\"\n- Ensure that your completion fits within the language context of the provided code snippet (e.g., Python, JavaScript, Rust).\n\nRules:\n- Only respond with code or comments.\n- Only replace \"<CURSOR>\"; do not include any previously written code.\n- Never include \"<CURSOR>\" in your response\n- If the cursor is within a comment, complete the comment meaningfully.\n- Handle ambiguous cases by providing the most contextually appropriate completion.\n- Be consistent with your responses."
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "def greet(name):\n print(f\"Hello, {<CURSOR>}\")"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "assistant"
|
|
content = "name"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "function sum(a, b) {\n return a + <CURSOR>;\n}"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "assistant"
|
|
content = "b"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "fn multiply(a: i32, b: i32) -> i32 {\n a * <CURSOR>\n}"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "assistant"
|
|
content = "b"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "# <CURSOR>\ndef add(a, b):\n return a + b"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "assistant"
|
|
content = "Adds two numbers"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "# This function checks if a number is even\n<CURSOR>"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "assistant"
|
|
content = "def is_even(n):\n return n % 2 == 0"
|
|
|
|
[[language-server.lsp-ai.config.completion.parameters.messages]]
|
|
role = "user"
|
|
content = "{CODE}"
|
|
|
|
|
|
#################################
|
|
## Configuration for languages ##
|
|
#################################
|
|
|
|
[[language]]
|
|
name = "python"
|
|
language-servers = ["pyright", "lsp-ai"]
|
|
|
|
## Configure other languages here
|