diff options
| author | Max Resnick <max@ofmax.li> | 2025-01-28 22:27:47 -0800 |
|---|---|---|
| committer | Max Resnick <max@ofmax.li> | 2025-01-31 22:45:23 -0800 |
| commit | c8162fc43a748a97aab4647be2f5cdf50bc739ea (patch) | |
| tree | 0099688a7a09af76a2ae978790c5e013b59bcb9c /py/utils.py | |
| parent | 380d5cdd9538c2522dfc8d03a8a261760bb0439a (diff) | |
| download | vim-ai-c8162fc43a748a97aab4647be2f5cdf50bc739ea.tar.gz | |
chore: rebase and fix up conflicts
Diffstat (limited to '')
| -rw-r--r-- | py/utils.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/py/utils.py b/py/utils.py index 8cd204f..2147785 100644 --- a/py/utils.py +++ b/py/utils.py @@ -359,3 +359,23 @@ def save_b64_to_file(path, b64_data): f = open(path, "wb") f.write(base64.b64decode(b64_data)) f.close() + +def load_provider(provider): + provider_name, provider_module = provider["name"].split(".") + if provider_name != "openai": + provider_path = os.path.join(f"{plugin_root}", + "..", + f"vim-ai-{provider_name}", + "py", + f"{provider_module}.py") + else: + return openai_request + vim.command(f"py3file {provider_path}") + try: + provider_class = globals()[provider["class"]] + except KeyError as error: + printDebug("[load-provider] provider: {}", error) + raise KeyError(error.message, "provider not found") + return provider_class + + |