A fluid medium for storing, relating, and surfacing thoughts.

Overview

Conceptarium

A fluid medium for storing, relating, and surfacing thoughts. Read more...

Instructions

The conceptarium takes up about 1GB RAM when running. Clone the repository, and install the requirements using:

python3 -m pip install -r requirements.txt

Note: If you plan to deploy your conceptarium on a Raspberry Pi 4, you'll need a version of pytorch compiled for ARM devices, such as pytorch-rpi.

Start the web server using:

python3 -m uvicorn main:app --reload

This will make your conceptarium available at 127.0.0.1:8000. Go to 127.0.0.1:8000/docs to get an overview of the available endpoints, and read the architecture section of the write-up.

Note: If you want to access your conceptarium remotely, have a look at ngrok.

Simple ways of getting the most out of your conceptarium are by configuring adding it as a search engine via browser extensions, or by creating some AutoKey / AutoHotKey scripts to interact with it via hotkeys.

Comments
  • Installation on Raspberry Pi OS?

    Installation on Raspberry Pi OS?

    I'd first tried to install the conceptarium on the preinstalled 32-bit Pi OS, which failed because I could not get Streamlit to run.

    Then I've tried it with the new 64-bit version of Pi OS. Streamlit works now, but the Pytorch-version linked in the readme could not be installed.

    Have you managed to install the conceptarium on Raspberry Pi OS? If not, which OS have you been using, so that I can try that out?

    opened by phkus 7
  • Unable to access conceptarium via the API

    Unable to access conceptarium via the API

    I've installed it via Docker and entered a token at localhost:8501. But I can't access it through the Curl or Request URL provided in the docs. Check custodian results in "{"custodian":false,"authorized_microverse":[]} and /save in "Only the conceptarium's custodian can save thoughts in it."

    One thing that came to mind: I've used special characters in the token. Could the issue be with the URL encoding?

    opened by phkus 7
  • Help in installation

    Help in installation

    Hi, I'm someone from a non-coding background so I have some difficulties following the instructions in the installation guide. Can you elaborate more on the installation guide (a step-by-step installation procedure would be great) in readme so that individuals from non-technical backgrounds can also make use of this wonderful resource.

    Additionally can you explain how I can self-host this application using a salvaged desktop?

    opened by Nomad-of-Ouroboros 6
  • Unable to search for thoughts

    Unable to search for thoughts

    Unfortunately I have to open another issue, but we're getting there.

    • my token works now
    • I can save thoughts, or at least I get a response with a filename, metadata, and the embeddings

    However, I cannot query for those thoughts. Through the API I just get an internal server error, but through the interface there are more details:

    JSONDecodeError: Expecting value: line 1 column 1 (char 0) Traceback: File "/usr/local/lib/python3.9/site-packages/streamlit/script_runner.py", line 379, in _run_script exec(code, module.dict) File "/app/main.py", line 19, in component.paint() File "/app/components/navigator.py", line 25, in paint st.session_state['authorized_thoughts'] = knowledge.load( File "/app/components/knowledge.py", line 45, in load content = json.loads(response.content) File "/usr/local/lib/python3.9/json/init.py", line 346, in loads return _default_decoder.decode(s) File "/usr/local/lib/python3.9/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/local/lib/python3.9/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None

    opened by phkus 5
  • Where is the docker data stored?

    Where is the docker data stored?

    Hey @paulbricman - really neat work! I'm deploying the conceptarium, ideoscope and lexiscore in docker via docker-compose.

    Quick question: where is the core data stored?

    I'd like to add a volume mount my config so that I can take backups of the data. I looked at the source code and saw the metadata pickle, but this seems to live in /app.

    opened by issmirnov 5
  • Knowledge folder not created when installed from source

    Knowledge folder not created when installed from source

    My imported knowledge folder should have gone into the base conceptarium directory, not the main user folder as was the case with the Docker version.

    Still: Shouldn't it have created such a folder for me when I first try to log in?

    Based on #25

    bug 
    opened by paulbricman 3
  • probem with Docker installation

    probem with Docker installation

    I've installed the new version of the conceptarium on MacOS following the Docker approach. During the installation there were no errors, but now I cannot get the Docker image to run.

    The frontend image exits immediately after starting it, with the following error in the log: Error: Invalid value: File does not exist: main.py Usage: streamlit run [OPTIONS] TARGET [ARGS]... Try 'streamlit run --help' for help.

    The backend image does show as "Running", but looking at the log there is also an error: INFO: Will watch for changes in these directories: ['/app'] INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) INFO: Started reloader process [8] using watchgod ERROR: Error loading ASGI app. Could not import module "main".

    opened by phkus 2
  • Docker deployment of conceptarium_frontend

    Docker deployment of conceptarium_frontend

    While deploying with the docker-compose up -d command, I get the following error in the conceptarium_frontend container.

    AttributeError: module 'click' has no attribute 'get_os_args'

    It is resolved by adding 'click' in frontend/requirements.txt

    opened by Trajjan 1
  • Online demo instance showing error - No such file or directory: components

    Online demo instance showing error - No such file or directory: components

    Your online instance hosted on Hugging Face is currently facing an issue, the one you link from your blog:

    FileNotFoundError: [Errno 2] No such file or directory: 'components'
    Traceback:
    
    File "/home/user/.local/lib/python3.8/site-packages/streamlit/script_runner.py", line 354, in _run_script
        exec(code, module.__dict__)
    File "/home/user/app/frontend/main.py", line 12, in <module>
        microverses.paint()
    File "frontend/components/microverses.py", line 24, in paint
        components = [e.split('.')[0] for e in os.listdir('components') if e.endswith(
    

    Unrelated, but thank you for the interesting write-ups!

    opened by NumesSanguis 1
  • API docs now incomplete

    API docs now incomplete

    Since you've changed the way the authorization works, the automatically generated API requests at localhost:8000/docs are not correct, because the token is not included anywhere in the output. After some trial and error, I've found out what works now (add -H 'authorization: Bearer <token>'\ to the curl request), but this might be an issue for someone just trying it out and relying on the requests provided by the docs.

    opened by phkus 1
  • Consider using state of the art semantic similarity algorithms

    Consider using state of the art semantic similarity algorithms

    The state of the art can be found here: https://paperswithcode.com/sota/semantic-textual-similarity-on-sts-benchmark

    Other benchmarcks: https://paperswithcode.com/task/semantic-textual-similarity

    opened by LifeIsStrange 1
  • Batch import via adding notes in knowledge folder

    Batch import via adding notes in knowledge folder

    I'm now curious how to save these notes. I was initially assuming that all text files in the knowledge folder would show up as notes here, but it seems at least the note I placed there is not showing, again I'm sure I'm doing something wrong.

    enhancement 
    opened by paulbricman 0
Releases(v2.0.0)
Owner
An open collective on a mission to augment thought for all.
Camera track the tip of a pen to use as a drawing tablet

cablet Camera track the tip of a pen to use as a drawing tablet Setup You will need: Writing utensil with a colored tip (preferably blue or green) Bac

14 Feb 20, 2022
Create Arrays (Working with For Loops)

DSA with Python Create Arrays (Working with For Loops) CREATING ARRAYS WITH USER INPUT Array is a collection of items stored at contiguous memory loca

1 Feb 08, 2022
Identify and annotate mutations from genome editing assays.

CRISPR-detector Here we propose our CRISPR-detector to facilitate the CRISPR-edited amplicon and whole genome sequencing data analysis, with functions

hlcas 2 Feb 20, 2022
End-to-End text sumarization, QAs generation using flask.

Help-Me-Read A web application created with Flask + BootStrap + HuggingFace 🤗 to generate summary and question-answer from given input text. It uses

Ankush Kuwar 12 Nov 13, 2022
AlexaUsingPython - Alexa will pay attention to your order, as: Hello Alexa, play music, Hello Alexa

AlexaUsingPython - Alexa will pay attention to your order, as: Hello Alexa, play music, Hello Alexa, what's the time? Alexa will pay attention to your order, get it, and afterward do some activity as

Abubakar Sattar 10 Aug 18, 2022
Un Assistente Vocale scritto in Python e altamente personalizzabile

Un Assistente Vocale scritto in Python e altamente personalizzabile

Marco 2 May 06, 2022
Python binding to rust zw-fast-quantile

zw_fast_quantile_py zw-fast-quantile python binding Installation pip install zw_fast_quantile_py Usage import zw_fast_quantile_py

Paul Meng 1 Dec 30, 2021
This is the key combo trainer for League of Legends and Dota 2 players.

This is the key combo trainer for League of Legends and Dota 2 players. Place the mouse cursor on the blue point and press the key combo from the upper-left side of the screen.

Ilya Shpigor 1 Jan 31, 2022
Automate your Microsoft Learn Student Ambassadors event certificate with Python

Microsoft Learn Student Ambassador Certificate Automation This repo simply use a template certificate docx file and generates certificates both docx a

Muhammed Oğuz 24 Aug 24, 2022
Plock : A stack based programming language

Plock : A stack based programming language

1 Oct 25, 2021
Exactly what it sounds like, which is something rad

EyeWitnessTheFitness External recon got ya down? That scan prevention system preventing you from enumerating web pages? Well look no further, I have t

Ellis Springe 18 Dec 31, 2022
About A python based Apple Quicktime protocol,you can record audio and video from real iOS devices

介绍 本应用程序使用 python 实现,可以通过 USB 连接 iOS 设备进行屏幕共享 高帧率(30〜60fps) 高画质 低延迟(200ms) 非侵入性 支持多设备并行 Mac OSX 安装 python =3.7 brew install libusb pkg-config 如需使用 g

YueC 124 Nov 30, 2022
For Tok-k passages that have passed through the Bi-Encoder Retrival, ReRank is performed using CrossEncoder.

Cross-Encoder-with-Bi-Encoder For Tok-k passages that have passed through the Bi-Encoder Retrival, ReRank is performed using CrossEncoder. Data Data u

7 Feb 09, 2022
Free components that wrap up Python into Delphi and Lazarus (FPC)

Python for Delphi (P4D) is a set of free components that wrap up the Python DLL into Delphi and Lazarus (FPC). They let you easily execute Python scri

747 Jan 02, 2023
Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface.

Yomiko Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface. Scans one or more directories of

Kyubi Systems 26 Aug 10, 2022
The newest contender in Server Gateway Interface.

nsgi The newest contender in Server Gateway Interface. Why use this webserver? This webserver is made with the newest version of asyncio, and sockets,

OpenRobot 1 Feb 12, 2022
Retrying library for Python

Tenacity Tenacity is an Apache 2.0 licensed general-purpose retrying library, written in Python, to simplify the task of adding retry behavior to just

Julien Danjou 4.3k Jan 02, 2023
TrainingBike - Code, models and schematics I've used to interface my stationary training bike with PC.

TrainingBike Code, models and schematics I've used to interface my stationary training bike with PC. You can find more information about the project i

1 Jan 01, 2022
fast_bss_eval is a fast implementation of the bss_eval metrics for the evaluation of blind source separation.

fast_bss_eval Do you have a zillion BSS audio files to process and it is taking days ? Is your simulation never ending ? Fear no more! fast_bss_eval i

Robin Scheibler 99 Dec 13, 2022
The goal of this program was to find the most common color in my living room.

The goal of this program was to find the most common color in my living room. I found a dataset online with colors names and their corr

1 Nov 09, 2021