+
    ]Qj                     N    ^ RI t ^RIHt ^RIHt ^RIHtHt ^RIH	t	 R R lt
R# )    N)LLMGenerationError)itinerary_system_prompt)get_providerget_provider_starting_with)GenerateItineraryRequestc                0    V ^8  d   QhR\         R\        /# )   payloadreturn)r   dict)formats   ">C:\xampp\htdocs\meridian\meridian-ai\app\services\itinerary.py__annotate__r   	   s     " " 8 "T "    c                 ~   \        V P                  '       d   V P                  P                  4       MR V P                  V P                  V P
                  R7      pRV P                  RV P                  RV P                  RV P                  /pRRR\        P                  ! V4      /.pV P                  '       d"   \        V P                  V P                  R	7      M	\        4       p VP!                  W4      pTP(                  TR&   TP*                  TR&   T#   \"         d   p\%        R
\'        T4      4      ThR p?ii ; i)N)	trip_specpreferencesanswered_questionsnum_options
trip_briefflight_candidatesstay_candidatesevent_candidatesroleusercontent)model_overridezFailed to generate itineraryprovider_usedskipped_providers)r   r   
model_dumpr   r   r   r   r   r   r   jsondumpsproviderr   modelr   complete_json	Exceptionr   str	last_usedskipped)r
   system_promptuser_contentmessagesr#   resultexcs   &      r   generate_itineraryr/   	   s,   +4;4E4E4E'##..04''"55''	M 	g((W66722G44	L DJJ|,DEFH  	#7#3#3GMMR^ T''@
 '00F?"*"2"2FM  T !?SJPSSTs   %D D<!D77D<)r!   
exceptionsr   promptsr   providers.factoryr   r   schemasr   r/    r   r   <module>r5      s     + - H ."r   