return { { "tzachar/cmp-ai", dependencies = { "nvim-lua/plenary.nvim" }, config = function() local cmp_ai = require("cmp_ai.config") cmp_ai:setup({ max_lines = 100, provider = "Ollama", provider_options = { model = "codellama:7b-code", auto_unload = false, }, notify = true, notify_callback = function(msg) vim.notify(msg) end, run_on_every_keystroke = true, }) end }, { "hrsh7th/nvim-cmp", dependencies = { "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-buffer", "hrsh7th/cmp-path", "hrsh7th/cmp-cmdline", "tzachar/cmp-ai", }, config = function() local cmp = require("cmp") cmp.setup({ snippet = { expand = function(args) vim.snippet.expand(args.body) end }, window = { completion = cmp.config.window.bordered(), documentation = cmp.config.window.bordered() }, mapping = cmp.mapping.preset.insert({ [""] = cmp.mapping.scroll_docs(-4), [""] = cmp.mapping.scroll_docs(4), [""] = cmp.mapping.complete(), [""] = cmp.mapping.abort(), [""] = cmp.mapping.confirm({ select = true }), }), sources = cmp.config.sources({ { name = "nvim_lsp" }, { name = "cmp_ai" }, }, {{ name = "buffer"}}) }) end }, }