configuration: minor improvements / fixes
Could not extend the subclass of 'TypedDict' the way I wanted, so I switched to 'dataclass'.
This commit is contained in:
@@ -8,7 +8,7 @@ import argcomplete
|
||||
import argparse
|
||||
import pathlib
|
||||
from .utils import terminal_width, print_tag_args, print_chat_hist, display_source_code, print_tags_frequency, ChatType
|
||||
from .storage import save_answers, create_chat_hist, get_tags, get_tags_unique, read_file, read_config, write_config, dump_data
|
||||
from .storage import save_answers, create_chat_hist, get_tags, get_tags_unique, read_file, dump_data
|
||||
from .api_client import ai, openai_api_key, print_models
|
||||
from .configuration import Config
|
||||
from itertools import zip_longest
|
||||
@@ -72,10 +72,10 @@ def config_cmd(args: argparse.Namespace, config: Config) -> None:
|
||||
if args.list_models:
|
||||
print_models()
|
||||
elif args.print_model:
|
||||
print(config['openai']['model'])
|
||||
print(config.openai.model)
|
||||
elif args.model:
|
||||
config['openai']['model'] = args.model
|
||||
write_config(args.config, config)
|
||||
config.openai.model = args.model
|
||||
config.to_file(args.config)
|
||||
|
||||
|
||||
def ask_cmd(args: argparse.Namespace, config: Config) -> None:
|
||||
@@ -83,11 +83,11 @@ def ask_cmd(args: argparse.Namespace, config: Config) -> None:
|
||||
Handler for the 'ask' command.
|
||||
"""
|
||||
if args.max_tokens:
|
||||
config['openai']['max_tokens'] = args.max_tokens
|
||||
config.openai.max_tokens = args.max_tokens
|
||||
if args.temperature:
|
||||
config['openai']['temperature'] = args.temperature
|
||||
config.openai.temperature = args.temperature
|
||||
if args.model:
|
||||
config['openai']['model'] = args.model
|
||||
config.openai.model = args.model
|
||||
chat, question, tags = create_question_with_hist(args, config)
|
||||
print_chat_hist(chat, False, args.only_source_code)
|
||||
otags = args.output_tags or []
|
||||
@@ -225,9 +225,9 @@ def main() -> int:
|
||||
parser = create_parser()
|
||||
args = parser.parse_args()
|
||||
command = parser.parse_args()
|
||||
config = read_config(args.config)
|
||||
config = Config.from_file(args.config)
|
||||
|
||||
openai_api_key(config['openai']['api_key'])
|
||||
openai_api_key(config.openai.api_key)
|
||||
|
||||
command.func(command, config)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user