Browse Source
        
      
      update openai version
      
        Signed-off-by: ChengZi <chen.zhang@zilliz.com>
      
      
        main
      
      
     
    
      
        
          
            
            ChengZi
          
          2 years ago
          
         
        
        
       
      
     
    
    
	
		
			
				 1 changed files with 
23 additions and 
8 deletions
			 
			
		 
		
			
				- 
					
					
					 
					openai_chat.py
				
 
			
		
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -14,7 +14,7 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import os | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					from typing import List | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					from packaging.version import Version | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import openai | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					from towhee.operator.base import PyOperator | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -33,6 +33,21 @@ class OpenaiChat(PyOperator): | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    def __call__(self, messages: List[dict]): | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        messages = self.parse_inputs(messages) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        if Version(openai.__version__) >= Version('1.0.0'): | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            from openai import OpenAI | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            client = OpenAI() | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            response = client.chat.completions.create( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                model=self._model, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                messages=messages, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                n=1, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                stream=self.stream, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                **self.kwargs | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            ) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            if self.stream: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                response = (res.dict() for res in response) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            else: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                response = response.dict() | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        else: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            response = openai.ChatCompletion.create( | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                model=self._model, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                messages=messages, | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |