diff --git a/ai_providers.py b/ai_providers.py index 957e0e2..9f020df 100644 --- a/ai_providers.py +++ b/ai_providers.py @@ -1,8 +1,10 @@ import os import json +import logging import anthropic from openai import OpenAI from abc import ABC, abstractmethod +from functions import functions class AIProvider(ABC): @abstractmethod @@ -56,7 +58,7 @@ class AnthropicProvider(AIProvider): "description": function['description'], "input_schema": function['parameters'] if function['parameters'] not in [None, {}] else {"type": "object", "properties": {"param1": {"type": "string", "description": "Unnecessary"}}, "required": []} } - for function in functions # This assumes 'functions' is globally accessible + for function in functions ] class OpenAIProvider(AIProvider): @@ -72,7 +74,7 @@ class OpenAIProvider(AIProvider): response = self.client.chat.completions.create( model=self.model, messages=self.format_messages(messages), - functions=functions, # This assumes 'functions' is globally accessible + functions=functions, function_call="auto", max_tokens=self.get_max_tokens() )