diff --git a/docs/examples/openai/openai_async_chat.py b/docs/examples/openai/openai_async_chat.py index 82f84d7..50d81de 100644 --- a/docs/examples/openai/openai_async_chat.py +++ b/docs/examples/openai/openai_async_chat.py @@ -17,8 +17,10 @@ async def callback(contents: str, user: str, instance: pn.chat.ChatInterface): ) message = "" async for chunk in response: - message += chunk["choices"][0]["delta"].get("content", "") - yield message + part = chunk.choices[0].delta.content + if part is not None: + message += part + yield message aclient = AsyncOpenAI() diff --git a/docs/examples/openai/openai_authentication.py b/docs/examples/openai/openai_authentication.py index b37293f..39bb2fd 100644 --- a/docs/examples/openai/openai_authentication.py +++ b/docs/examples/openai/openai_authentication.py @@ -49,8 +49,10 @@ async def callback( ) message = "" async for chunk in response: - message += chunk["choices"][0]["delta"].get("content", "") - yield message + part = chunk.choices[0].delta.content + if part is not None: + message += part + yield message aclient = AsyncOpenAI() diff --git a/docs/examples/openai/openai_chat.py b/docs/examples/openai/openai_chat.py index 79392e4..75357dd 100644 --- a/docs/examples/openai/openai_chat.py +++ b/docs/examples/openai/openai_chat.py @@ -17,8 +17,10 @@ async def callback(contents: str, user: str, instance: pn.chat.ChatInterface): ) message = "" for chunk in response: - message += chunk["choices"][0]["delta"].get("content", "") - yield message + part = chunk.choices[0].delta.content + if part is not None: + message += part + yield message client = OpenAI() diff --git a/docs/examples/openai/openai_hvplot.py b/docs/examples/openai/openai_hvplot.py index 4169bb9..08a5e43 100644 --- a/docs/examples/openai/openai_hvplot.py +++ b/docs/examples/openai/openai_hvplot.py @@ -45,8 +45,10 @@ async def respond_with_openai(contents: Union[pd.DataFrame, str]): ) message = "" async for chunk in response: - message += chunk["choices"][0]["delta"].get("content", "") - yield {"user": "ChatGPT", "object": message} + part = chunk.choices[0].delta.content + if part is not None: + message += part + yield {"user": "ChatGPT", "object": message} async def respond_with_executor(code: str): diff --git a/docs/examples/openai/openai_image_generation.py b/docs/examples/openai/openai_image_generation.py index 278bc2c..3ac943a 100644 --- a/docs/examples/openai/openai_image_generation.py +++ b/docs/examples/openai/openai_image_generation.py @@ -11,7 +11,7 @@ def callback(contents: str, user: str, instance: pn.chat.ChatInterface): response = client.images.generate(prompt=contents, n=1, size="256x256") - image_url = response["data"][0]["url"] + image_url = response.data[0].url return pn.pane.Image(image_url, width=256, height=256) diff --git a/docs/examples/openai/openai_two_bots.py b/docs/examples/openai/openai_two_bots.py index 50723a5..f839194 100644 --- a/docs/examples/openai/openai_two_bots.py +++ b/docs/examples/openai/openai_two_bots.py @@ -31,8 +31,10 @@ async def callback( ) message = "" async for chunk in response: - message += chunk["choices"][0]["delta"].get("content", "") - yield {"user": callback_user, "avatar": callback_avatar, "object": message} + part = chunk.choices[0].delta.content + if part is not None: + message += part + yield {"user": callback_user, "avatar": callback_avatar, "object": message} if len(instance.objects) % 6 == 0: # stop at every 6 messages instance.send(