mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-25 23:05:00 +00:00
added /models cmd
This commit is contained in:
parent
e610e5bd0a
commit
050d35790e
3 changed files with 26 additions and 12 deletions
|
@ -8,7 +8,7 @@ import git
|
||||||
import openai
|
import openai
|
||||||
from prompt_toolkit.completion import Completion
|
from prompt_toolkit.completion import Completion
|
||||||
|
|
||||||
from aider import prompts, voice
|
from aider import models, prompts, voice
|
||||||
from aider.scrape import Scraper
|
from aider.scrape import Scraper
|
||||||
from aider.utils import is_image_file
|
from aider.utils import is_image_file
|
||||||
|
|
||||||
|
@ -28,6 +28,16 @@ class Commands:
|
||||||
|
|
||||||
self.voice_language = voice_language
|
self.voice_language = voice_language
|
||||||
|
|
||||||
|
def cmd_model(self, args):
|
||||||
|
"Search the list of available models"
|
||||||
|
|
||||||
|
args = args.strip()
|
||||||
|
|
||||||
|
if args:
|
||||||
|
models.print_matching_models(self.io, args)
|
||||||
|
else:
|
||||||
|
self.io.tool_output("Use `/model <SEARCH>` to show models which match")
|
||||||
|
|
||||||
def cmd_web(self, args):
|
def cmd_web(self, args):
|
||||||
"Use headless selenium to scrape a webpage and add the content to the chat"
|
"Use headless selenium to scrape a webpage and add the content to the chat"
|
||||||
url = args.strip()
|
url = args.strip()
|
||||||
|
|
|
@ -270,17 +270,7 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
|
||||||
return 0 if not update_available else 1
|
return 0 if not update_available else 1
|
||||||
|
|
||||||
if args.models:
|
if args.models:
|
||||||
matches = models.fuzzy_match_models(args.models)
|
models.print_matching_models(io, args.models)
|
||||||
if matches:
|
|
||||||
io.tool_output(f'Models which match "{args.models}":')
|
|
||||||
for model in matches:
|
|
||||||
fq, m = model
|
|
||||||
if fq == m:
|
|
||||||
io.tool_output(f"- {m}")
|
|
||||||
else:
|
|
||||||
io.tool_output(f"- {m} ({fq})")
|
|
||||||
else:
|
|
||||||
io.tool_output(f'No models match "{args.models}".')
|
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
if args.git:
|
if args.git:
|
||||||
|
|
|
@ -409,6 +409,20 @@ def fuzzy_match_models(name):
|
||||||
return list(zip(matching_models, matching_models))
|
return list(zip(matching_models, matching_models))
|
||||||
|
|
||||||
|
|
||||||
|
def print_matching_models(io, search):
|
||||||
|
matches = fuzzy_match_models(search)
|
||||||
|
if matches:
|
||||||
|
io.tool_output(f'Models which match "{search}":')
|
||||||
|
for model in matches:
|
||||||
|
fq, m = model
|
||||||
|
if fq == m:
|
||||||
|
io.tool_output(f"- {m}")
|
||||||
|
else:
|
||||||
|
io.tool_output(f"- {m} ({fq})")
|
||||||
|
else:
|
||||||
|
io.tool_output(f'No models match "{search}".')
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
if len(sys.argv) != 2:
|
if len(sys.argv) != 2:
|
||||||
print("Usage: python models.py <model_name>")
|
print("Usage: python models.py <model_name>")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue