Giter Club home page Giter Club logo

embedchain-admin's Introduction

Embedchain Admin

Welcome to the Embedchain Admin repository. This toolkit helps you build a full-stack RAG (Retrieve, Append, Generate) application with a focus on simplicity and functionality, powered by Embedchain.

๐Ÿš€ Features

  • Chat Interface: A clean and simple interface for messaging.
  • Streaming: Supports live data streaming.
  • Citations: Allows integration of citations within the chat.
  • Model Support: Compatible with both proprietary and open-source models.
  • Admin Panel:
    • View chat history.
    • Manage embeddings.
    • Configure data sources through the UI.

Tech Stack

This project uses:

  • FastAPI: For the backend, making it fast and easy to develop.
  • NextJS: For the frontend, enabling responsive and dynamic web pages.
  • Embedchain: Powers the core functionalities like chat and streaming.

Getting Started

To start using Embedchain Admin for your project, install python package using:

pip install embedchain

Now, if you use docker, you can simply run the following commands:

With docker

ec create-app my-app --docker
cd my-app
ec start --docker

Without docker

ec create-app my-app
cd my-app
ec start

You are all set now. Open http://localhost:3000 to view the chat UI.

Screenshots

Chat

Search

Chat history

Collections

Data sources

embedchain-admin's People

Contributors

deshraj avatar taranjeet avatar

Stargazers

 avatar Charlie Cortial avatar Adrian Carballo avatar Abhishek Sharma avatar poweron // software avatar  avatar  avatar Deven Patel avatar

Watchers

 avatar  avatar poweron // software avatar  avatar Abhishek Sharma avatar

embedchain-admin's Issues

Bug in API call - AttributeError: 'DataSource' object has no attribute 'data_type'

Hi,

I think this was reported earlier in the main branch and it looked like it might have been addressed, but I am seeing this error under the back end API AttributeError: 'DataSource' object has no attribute 'data_type' when running the API call /api/v1/admin/data_source.

Being run from a docker instantiation via ec start docker for my-app.

Here is the traceback:

backend-1   | INFO:     192.168.0.60:56393 - "GET /api/v1/admin/data_sources HTTP/1.1" 500 Internal Server Error
backend-1   | ERROR:    Exception in ASGI application
backend-1   | Traceback (most recent call last):
backend-1   |   File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 426, in run_asgi
backend-1   |     result = await app(  # type: ignore[func-returns-value]
backend-1   |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__
backend-1   |     return await self.app(scope, receive, send)
backend-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
backend-1   |     await super().__call__(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 116, in __call__
backend-1   |     await self.middleware_stack(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
backend-1   |     raise exc
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
backend-1   |     await self.app(scope, receive, _send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 62, in __call__
backend-1   |     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 55, in wrapped_app
backend-1   |     raise exc
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 44, in wrapped_app
backend-1   |     await app(scope, receive, sender)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 746, in __call__
backend-1   |     await route.handle(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 288, in handle
backend-1   |     await self.app(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 75, in app
backend-1   |     await wrap_app_handling_exceptions(app, request)(scope, receive, send)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 55, in wrapped_app
backend-1   |     raise exc
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 44, in wrapped_app
backend-1   |     await app(scope, receive, sender)
backend-1   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 70, in app
backend-1   |     response = await func(request)
backend-1   |                ^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 299, in app
backend-1   |     raise e
backend-1   |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 294, in app
backend-1   |     raw_response = await run_endpoint_function(
backend-1   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
backend-1   |     return await dependant.call(**values)
backend-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/app/routes/admin/data_sources.py", line 22, in get_all_data_sources
backend-1   |     data_sources = ec_app.get_data_sources()
backend-1   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
backend-1   |   File "/usr/local/lib/python3.11/site-packages/embedchain/app.py", line 298, in get_data_sources
backend-1   |     results.append({"data_type": row.data_type, "data_value": row.data_value, "metadata": row.metadata})
backend-1   |                                  ^^^^^^^^^^^^^
backend-1   | AttributeError: 'DataSource' object has no attribute 'data_type'

Note I am using python 3.11 and I have also updated the pip embedchain package to what I assume is the latest (not 100% clear that the docker pull is seeing it however): Successfully installed embedchain-0.1.93

Thanks, -David

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.