--- title: "🌍 Getting Started" --- ## Quickstart To use Embedchain as a REST API service, run the following command: ```bash docker run --name embedchain -p 8080:8080 embedchain/rest-api:latest ``` Navigate to [http://localhost:8080/docs](http://localhost:8080/docs) to interact with the API. There is a full-fledged Swagger docs playground with all the information about the API endpoints. ![Swagger Docs Screenshot](https://github.com/embedchain/embedchain/assets/73601258/299d81e5-a0df-407c-afc2-6fa2c4286844) ## Creating your first App App requires an `app_id` to be created. The `app_id` is a unique identifier for your app. By default we will use the opensource **gpt4all** model to get started. You can also specify your own config by uploading a config YAML file. For example, create a `config.yaml` file (adjust according to your requirements): ```yaml app: config: id: "default-app" llm: provider: openai config: model: "gpt-3.5-turbo" temperature: 0.5 max_tokens: 1000 top_p: 1 stream: false template: | Use the following pieces of context to answer the query at the end. If you don't know the answer, just say that you don't know, don't try to make up an answer. $context Query: $query Helpful Answer: vectordb: provider: chroma config: collection_name: "rest-api-app" dir: db allow_reset: true embedder: provider: openai config: model: "text-embedding-ada-002" ``` To learn more about custom configurations, check out the [custom configurations docs](https://docs.embedchain.ai/advanced/configuration). To explore more examples of config yamls for embedchain, visit [embedchain/configs](https://github.com/embedchain/embedchain/tree/main/configs). Now, you can upload this config file in the request body. **Note:** To use custom models, an **API key** might be required. Refer to the table below to determine the necessary API key for your provider. | Keys | Providers | | -------------------------- | ------------------------------ | | `OPENAI_API_KEY ` | OpenAI, Azure OpenAI, Jina etc | | `OPENAI_API_TYPE` | Azure OpenAI | | `OPENAI_API_BASE` | Azure OpenAI | | `OPENAI_API_VERSION` | Azure OpenAI | | `COHERE_API_KEY` | Cohere | | `ANTHROPIC_API_KEY` | Anthropic | | `JINACHAT_API_KEY` | Jina | | `HUGGINGFACE_ACCESS_TOKEN` | Huggingface | | `REPLICATE_API_TOKEN` | LLAMA2 | To add env variables, you can simply run the docker command with the `-e` flag. For example, ```bash docker run --name embedchain -p 8080:8080 -e OPENAI_API_KEY= embedchain/rest-api:latest ``` If you run into issues, please feel free to contact us using below links: