import os from core.llms import LLM from dotenv import load_dotenv from typing import Annotated, Optional # from function_schema import Doc from core.llms.utils import user_message_with_images load_dotenv('../.global_env') # def get_weather( # city: Annotated[str, "The city to get the weather for"], # <- string value of Annotated is used as a description # unit: Annotated[Optional[str], "The unit to return the temperature in"] = "celcius", # ) -> str: # """Returns the weather for the given city.""" # return f"Weather for {city} is 20°C" # def get_distance(city1: Annotated[str, 'city to start journey from'], city2: Annotated[str, 'city where journey ends']) -> float: # ''' Returns distance between two cities ''' # return f"{city1} --- {city2}: 10 KM" # tools = {"get_weather": get_weather, 'get_distance':get_distance} # models= [ # ('gemini/gemini-1.5-flash', 'GEMINI_API_KEY'), # ('groq/llava-v1.5-7b-4096-preview', 'GROQ_API_KEY') # ] # model , api_key = models[0] # api_key = os.getenv(api_key) # llm = LLM(api_key=api_key, model=model) # messages = [ # {"role": "system", "content": "You are a helpful assistant."}, # {"role": "user", "content": "Who won the world series in 2020?"}, # {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."}, # # {"role": "user", "content": "whats weather in new york, what is distance between new york and las vegas"}, # # user_message_with_images( # # 'explain this image', # # file_path_list = ['./hehe.jpg'], # # max_size_px=512, # # ) # ] # response = llm.chat(messages) # print('response: ', response) from app.app import main if __name__ == '__main__': main()