@@ -444,14 +444,14 @@ impl Engine {
444444
445445 let ( prompt, tokenizer, image_data, resolved_tools) = {
446446 let e = self . engine . read ( ) ;
447- let ( pipeline, _) = e. get_pipeline ( 0 ) . unwrap ( ) ;
448447
449448 let tool_config = resolve_tools_for_request ( & request. tools , & request. tool_choice , None )
450449 . map_err ( candle_core:: Error :: wrap) ?;
451450 let resolved_tools = tool_config. tools . clone ( ) ;
452451
453- // tokenizer is inside DefaultPipeline
454- let mut conversation = pipeline. conversation . clone ( ) ;
452+ let tokenizer = e. tokenizer ( ) . clone ( ) ;
453+ let image_config = e. image_config ( ) ;
454+ let mut conversation = e. conversation ( ) ;
455455 let mut image_data = None ;
456456
457457 // Logic to get prompt from messages
@@ -462,7 +462,7 @@ impl Engine {
462462 }
463463 Messages :: Chat ( messages) => {
464464 let ( render_messages, images) =
465- build_messages_and_images ( messages, pipeline . image_config . as_ref ( ) )
465+ build_messages_and_images ( messages, image_config. as_ref ( ) )
466466 . map_err ( candle_core:: Error :: wrap) ?;
467467 image_data = images;
468468 for message in render_messages {
@@ -499,12 +499,7 @@ impl Engine {
499499 let enable_thinking = request. thinking . unwrap_or ( true ) ;
500500 let prompt = conversation. get_prompt ( enable_thinking, & tool_config. tools ) ;
501501
502- (
503- prompt,
504- pipeline. tokenizer . clone ( ) ,
505- image_data,
506- resolved_tools,
507- )
502+ ( prompt, tokenizer, image_data, resolved_tools)
508503 } ;
509504
510505 let request_id = format ! ( "cmpl-{}" , uuid:: Uuid :: new_v4( ) ) ;
@@ -692,10 +687,11 @@ impl Engine {
692687 }
693688
694689 let e = self . engine . read ( ) ;
695- let response_model = e
696- . get_pipeline ( 0 )
697- . map ( |( pipeline, _) | pipeline. name ( ) . to_string ( ) )
698- . unwrap_or_else ( || request. model . clone ( ) . unwrap_or ( "default" . to_string ( ) ) ) ;
690+ let response_model = if e. model_name ( ) . is_empty ( ) {
691+ request. model . clone ( ) . unwrap_or ( "default" . to_string ( ) )
692+ } else {
693+ e. model_name ( ) . to_string ( )
694+ } ;
699695 if let Some ( record) = e. completion_records . get ( & request_id) {
700696 let mut choices = record. 0 . clone ( ) ;
701697 if crate :: stream_as_reasoning_content ( ) {
@@ -780,7 +776,6 @@ impl Engine {
780776 pub async fn embed_async ( & self , request : EmbeddingRequest ) -> Result < EmbeddingResponse > {
781777 let prompt_tokens = {
782778 let e = self . engine . read ( ) ;
783- let ( pipeline, _) = e. get_pipeline ( 0 ) . unwrap ( ) ;
784779
785780 let prompt_str = match & request. input {
786781 crate :: openai:: requests:: EmbeddingInput :: String ( s) => s. clone ( ) ,
@@ -799,8 +794,7 @@ impl Engine {
799794 }
800795 } ;
801796
802- pipeline
803- . tokenizer
797+ e. tokenizer ( )
804798 . encode ( prompt_str, false )
805799 . map_err ( candle_core:: Error :: msg) ?
806800 . get_ids ( )
0 commit comments