Spaces:
No application file
No application file
| --- | |
| title: "App" | |
| --- | |
| Create a RAG app object on Embedchain. This is the main entrypoint for a developer to interact with Embedchain APIs. An app configures the llm, vector database, embedding model, and retrieval strategy of your choice. | |
| ### Attributes | |
| <ParamField path="local_id" type="str"> | |
| App ID | |
| </ParamField> | |
| <ParamField path="name" type="str" optional> | |
| Name of the app | |
| </ParamField> | |
| <ParamField path="config" type="BaseConfig"> | |
| Configuration of the app | |
| </ParamField> | |
| <ParamField path="llm" type="BaseLlm"> | |
| Configured LLM for the RAG app | |
| </ParamField> | |
| <ParamField path="db" type="BaseVectorDB"> | |
| Configured vector database for the RAG app | |
| </ParamField> | |
| <ParamField path="embedding_model" type="BaseEmbedder"> | |
| Configured embedding model for the RAG app | |
| </ParamField> | |
| <ParamField path="chunker" type="ChunkerConfig"> | |
| Chunker configuration | |
| </ParamField> | |
| <ParamField path="client" type="Client" optional> | |
| Client object (used to deploy an app to Embedchain platform) | |
| </ParamField> | |
| <ParamField path="logger" type="logging.Logger"> | |
| Logger object | |
| </ParamField> | |
| ## Usage | |
| You can create an app instance using the following methods: | |
| ### Default setting | |
| ```python Code Example | |
| from embedchain import App | |
| app = App() | |
| ``` | |
| ### Python Dict | |
| ```python Code Example | |
| from embedchain import App | |
| config_dict = { | |
| 'llm': { | |
| 'provider': 'gpt4all', | |
| 'config': { | |
| 'model': 'orca-mini-3b-gguf2-q4_0.gguf', | |
| 'temperature': 0.5, | |
| 'max_tokens': 1000, | |
| 'top_p': 1, | |
| 'stream': False | |
| } | |
| }, | |
| 'embedder': { | |
| 'provider': 'gpt4all' | |
| } | |
| } | |
| # load llm configuration from config dict | |
| app = App.from_config(config=config_dict) | |
| ``` | |
| ### YAML Config | |
| <CodeGroup> | |
| ```python main.py | |
| from embedchain import App | |
| # load llm configuration from config.yaml file | |
| app = App.from_config(config_path="config.yaml") | |
| ``` | |
| ```yaml config.yaml | |
| llm: | |
| provider: gpt4all | |
| config: | |
| model: 'orca-mini-3b-gguf2-q4_0.gguf' | |
| temperature: 0.5 | |
| max_tokens: 1000 | |
| top_p: 1 | |
| stream: false | |
| embedder: | |
| provider: gpt4all | |
| ``` | |
| </CodeGroup> | |
| ### JSON Config | |
| <CodeGroup> | |
| ```python main.py | |
| from embedchain import App | |
| # load llm configuration from config.json file | |
| app = App.from_config(config_path="config.json") | |
| ``` | |
| ```json config.json | |
| { | |
| "llm": { | |
| "provider": "gpt4all", | |
| "config": { | |
| "model": "orca-mini-3b-gguf2-q4_0.gguf", | |
| "temperature": 0.5, | |
| "max_tokens": 1000, | |
| "top_p": 1, | |
| "stream": false | |
| } | |
| }, | |
| "embedder": { | |
| "provider": "gpt4all" | |
| } | |
| } | |
| ``` | |
| </CodeGroup> | |