---
title: OpenAI
---
import { LoomVideo } from '/snippets/loom-video.mdx'
## Create chat completion
With the OpenAI block, you can create a chat completion based on your user queries and display the answer back to your typebot.
This integration comes with a convenient message type called **Dialogue**. It allows you to easily pass a sequence of saved assistant / user messages history to OpenAI:
Then you can give the OpenAI block access to this sequence of messages:
## Ask assistant
This action allows you to talk with your [OpenAI assistant](https://platform.openai.com/assistants). All you have to do is to provide its ID.
## Create speech
This action allows you to transform a text input into an audio URL that you can reuse in your bot.
:::note
The generated audio URLs are temporary and expire after 7 days. If you need to store them, make sure to download them before they expire.
:::
## Using Multiple Open AI Blocks: Tips and Tricks
In this video, I discuss some important things to keep in mind when using multiple Open AI blocks consecutively. I provide an example where we ask the user for a topic, generate a summary, and display a list of authors.
I explain that streaming messages is not possible when they are prefixed or suffixed by text, and that all blocks need to compute before displaying anything.
I also demonstrate how formatting can be affected by the presence of text before a message. Watch this video to learn how to optimize your use of multiple Open AI blocks.
## Troobleshooting
### Error message: "OpenAI block returned error"
It means your OpenAI block is not configured properly. Please check the following:
- You have selected an OpenAI account
- You have at least 1 **user** message or a **Dialogue** message set up.
### It returns an empty message
It most likely mean that you exceeded your OpenAI free quota. Add a payment method to your OpenAI account to continue using it.