| 
					
				 | 
			
			
				@@ -616,30 +616,34 @@ class OAIAPICompatLargeLanguageModel(_CommonOAI_API_Compat, LargeLanguageModel): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message = cast(AssistantPromptMessage, message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message_dict = {"role": "assistant", "content": message.content} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if message.tool_calls: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                # message_dict["tool_calls"] = [helper.dump_model(PromptMessageFunction(function=tool_call)) for tool_call 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                #                               in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                #                               message.tool_calls] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                function_call = message.tool_calls[0] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                message_dict["function_call"] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    "name": function_call.function.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    "arguments": function_call.function.arguments, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                function_calling_type = credentials.get('function_calling_type', 'no_call') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if function_calling_type == 'tool_call': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    message_dict["tool_calls"] = [tool_call.dict() for tool_call in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                message.tool_calls] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                elif function_calling_type == 'function_call': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    function_call = message.tool_calls[0] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    message_dict["function_call"] = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        "name": function_call.function.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        "arguments": function_call.function.arguments, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         elif isinstance(message, SystemPromptMessage): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message = cast(SystemPromptMessage, message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message_dict = {"role": "system", "content": message.content} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         elif isinstance(message, ToolPromptMessage): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message = cast(ToolPromptMessage, message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            # message_dict = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            #     "role": "tool", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            #     "content": message.content, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            #     "tool_call_id": message.tool_call_id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            # } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message_dict = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                "role": "tool" if credentials and credentials.get('function_calling_type', 'no_call') == 'tool_call' else "function", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                "content": message.content, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                "name": message.tool_call_id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            function_calling_type = credentials.get('function_calling_type', 'no_call') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if function_calling_type == 'tool_call': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                message_dict = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "role": "tool", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "content": message.content, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "tool_call_id": message.tool_call_id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            elif function_calling_type == 'function_call': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                message_dict = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "role": "function", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "content": message.content, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "name": message.tool_call_id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         else: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             raise ValueError(f"Got unknown type {message}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |