Skip to content

Commit

Permalink
added JSON template
Browse files Browse the repository at this point in the history
  • Loading branch information
hegstadjosh committed Oct 5, 2024
1 parent 443fd37 commit 04fa3e2
Showing 1 changed file with 28 additions and 35 deletions.
63 changes: 28 additions & 35 deletions src/delta.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,46 +9,39 @@
# Initialize OpenAI client
openai.api_key = os.getenv("OPENAI_API_KEY")

#TODO func to analyze how much more info a user wants for a note
'''
#chrome extension or web app entry -> new info -> generate best pitch of routes to take for info
# -> compare with current pages -> either:
- add info to existing page
- create parent or child for existing page
- create new page
-> add to knowledge base
#paths for info RAG:
- simple note-taking : format user's saved info nicely
- research assistant : use internet and knowledge base to generate report and possible new paths
- project planning : use knowledge base to organize, plan
#features:
user chooses how many pages to automatically generate from their note
user selects which knowledge base(s) to use for generating new pages
user can like, dislike, or give direct feedback on generated pages
user can create new pages manually
#ui
##chrome extension:
### Example page JSON
```json
{
"page_id": "123",
"title": "Introduction to BrainButler",
"content": "This page provides an overview of BrainButler.",
"links": [
{
"type": "page",
"id": "124",
"title": "System Architecture"
},
{
"type": "file",
"id": "file_001",
"filename": "README.md"
}
]
}
```
##web app:
login, enter api key, create/modify knowledge bases, upload files to pages
### Explanation
views:
- show pages as squares, sortable by date, knowledge base, or category
- (if time) show tree view of knowledge base
#crews:
knowledge base crew: organizes knowledge bases, suggests, and creates new ones (ie combining directories of pages)
assimilation crew: decides how to incorporate info into a KB
creation crew: researches and generates pages
This JSON represents a page in the system. It includes:
#Stored data for each user:
knowledge base outlines: generated by knowledge base crew
pages (the main content): generated by creation crew
notes: source input for pages
metadata: user behavior & preferences, used to modify prompts
- **Page ID**: A unique identifier for the page.
- **Title**: The title of the page.
- **Content**: A brief description or content of the page.
- **Links**: An array of pointers to related pages and files. Each link has a type (either 'page' or 'file'), an ID, and a title or filename.
The frontend can use this JSON to dynamically fetch and display related content by following the IDs in the links array. This structure allows for easy navigation and organization of interconnected pages and files.
'''
class Delta:

Expand Down

0 comments on commit 04fa3e2

Please sign in to comment.