File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99from langchain_classic .chains .combine_documents import create_stuff_documents_chain
1010from langchain_core .prompts import ChatPromptTemplate
1111
12+ import logging
13+
14+ logger = logging .getLogger (__name__ )
15+
1216def list_gemini_models ():
1317 """
1418 Lists available Gemini models that support content generation.
1519 """
1620 api_key = getattr (settings , 'GOOGLE_API_KEY' , None )
1721 if not api_key :
22+ logger .warning ("No GOOGLE_API_KEY found in settings." )
1823 return []
1924
2025 try :
2126 genai .configure (api_key = api_key )
2227 models = []
28+ logger .info ("Fetching available Gemini models..." )
2329 for m in genai .list_models ():
24- if 'generateContent' in m .supported_generation_methods :
25- # We want to show a clean name to the user
26- # e.g., models/gemini-1.5-flash -> Gemini 1.5 Flash
30+ # Log all models found for debugging
31+ logger .info (f"Found model: { m .name } (Methods: { m .supported_generation_methods } )" )
32+
33+ if 'generateContent' in m .supported_generation_methods and m .name .startswith ('models/gemini' ):
2734 display_name = m .display_name
28- model_name = m .name # e.g. models/gemini-1.5-flash
35+ model_name = m .name
2936 models .append ({
3037 'name' : model_name ,
3138 'display_name' : display_name
3239 })
40+
41+ logger .info (f"Returning { len (models )} eligible models." )
3342 return models
3443 except Exception as e :
35- print (f"Error listing Gemini models: { str (e )} " )
44+ logger . error (f"Error listing Gemini models: { str (e )} " )
3645 return []
3746
3847def process_pdf (file_path , vector_store_path ):
You can’t perform that action at this time.
0 commit comments