# OpenAI All functionality related to OpenAI >[OpenAI](https://en.wikipedia.org/wiki/OpenAI) is American artificial intelligence (AI) research laboratory > consisting of the non-profit `OpenAI Incorporated` > and its for-profit subsidiary corporation `OpenAI Limited Partnership`. > `OpenAI` conducts AI research with the declared intention of promoting and developing a friendly AI. > `OpenAI` systems run on an `Azure`-based supercomputing platform from `Microsoft`. >The [OpenAI API](https://platform.openai.com/docs/models) is powered by a diverse set of models with different capabilities and price points. > >[ChatGPT](https://chat.openai.com) is the Artificial Intelligence (AI) chatbot developed by `OpenAI`. ## Installation and Setup Install the integration package with ```bash pip install langchain-openai ``` Get an OpenAI api key and set it as an environment variable (`OPENAI_API_KEY`) ## LLM See a [usage example](/docs/integrations/llms/openai). ```python from langchain_openai import OpenAI ``` If you are using a model hosted on `Azure`, you should use different wrapper for that: ```python from langchain_openai import AzureOpenAI ``` For a more detailed walkthrough of the `Azure` wrapper, see [here](/docs/integrations/llms/azure_openai) ## Chat model See a [usage example](/docs/integrations/chat/openai). ```python from langchain_openai import ChatOpenAI ``` If you are using a model hosted on `Azure`, you should use different wrapper for that: ```python from langchain_openai import AzureChatOpenAI ``` For a more detailed walkthrough of the `Azure` wrapper, see [here](/docs/integrations/chat/azure_chat_openai) ## Embedding Model See a [usage example](/docs/integrations/text_embedding/openai) ```python from langchain_openai import OpenAIEmbeddings ``` ## Document Loader See a [usage example](/docs/integrations/document_loaders/chatgpt_loader). ```python from langchain_community.document_loaders.chatgpt import ChatGPTLoader ``` ## Retriever See a [usage example](/docs/integrations/retrievers/chatgpt-plugin). ```python from langchain.retrievers import ChatGPTPluginRetriever ``` ## Tools ### Dall-E Image Generator >[OpenAI Dall-E](https://openai.com/dall-e-3) are text-to-image models developed by `OpenAI` > using deep learning methodologies to generate digital images from natural language descriptions, > called "prompts". See a [usage example](/docs/integrations/tools/dalle_image_generator). ```python from langchain_community.utilities.dalle_image_generator import DallEAPIWrapper ``` ## Adapter See a [usage example](/docs/integrations/adapters/openai). ```python from langchain.adapters import openai as lc_openai ``` ## Tokenizer There are several places you can use the `tiktoken` tokenizer. By default, it is used to count tokens for OpenAI LLMs. You can also use it to count tokens when splitting documents with ```python from langchain.text_splitter import CharacterTextSplitter CharacterTextSplitter.from_tiktoken_encoder(...) ``` For a more detailed walkthrough of this, see [this notebook](/docs/modules/data_connection/document_transformers/split_by_token#tiktoken) ## Chain See a [usage example](/docs/guides/productionization/safety/moderation). ```python from langchain.chains import OpenAIModerationChain ```