Browse Source
update openai version
Signed-off-by: ChengZi <chen.zhang@zilliz.com>
main
ChengZi
1 year ago
1 changed files with
23 additions and
8 deletions
-
openai_chat.py
|
@ -14,7 +14,7 @@ |
|
|
|
|
|
|
|
|
import os |
|
|
import os |
|
|
from typing import List |
|
|
from typing import List |
|
|
|
|
|
|
|
|
|
|
|
from packaging.version import Version |
|
|
import openai |
|
|
import openai |
|
|
from towhee.operator.base import PyOperator |
|
|
from towhee.operator.base import PyOperator |
|
|
|
|
|
|
|
@ -33,13 +33,28 @@ class OpenaiChat(PyOperator): |
|
|
|
|
|
|
|
|
def __call__(self, messages: List[dict]): |
|
|
def __call__(self, messages: List[dict]): |
|
|
messages = self.parse_inputs(messages) |
|
|
messages = self.parse_inputs(messages) |
|
|
response = openai.ChatCompletion.create( |
|
|
|
|
|
model=self._model, |
|
|
|
|
|
messages=messages, |
|
|
|
|
|
n=1, |
|
|
|
|
|
stream=self.stream, |
|
|
|
|
|
**self.kwargs |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
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, |
|
|
|
|
|
n=1, |
|
|
|
|
|
stream=self.stream, |
|
|
|
|
|
**self.kwargs |
|
|
|
|
|
) |
|
|
if self.stream: |
|
|
if self.stream: |
|
|
return self.stream_output(response) |
|
|
return self.stream_output(response) |
|
|
else: |
|
|
else: |
|
|