-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
mike dupont
committed
Oct 22, 2023
1 parent
45e70d6
commit bbdaa23
Showing
2 changed files
with
158 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
|
||
Functions to inspect: `add_chat_*` | ||
|
||
` grep add_chat_ function_calls2.csv | cut -d, -f2 |cut -d. -f3- |sort |uniq -c` | ||
|
||
`forge.sdk.memory.memstore_tools.add_chat_memory` | ||
|
||
In the `forge.db.ForgeDatabase` : | ||
`add_chat_history` calls `add_chat_message` in the derived classes | ||
|
||
|
||
|
||
|
||
511 grep on_message function_calls2.csv | ||
512 grep add_chat_message function_calls2.csv | ||
513 grep add_chat_message function_calls2.csv |grep -v ,autogpts | ||
514 grep add_chat_message function_calls2.csv | cut -d, -f2 | ||
515 grep add_chat_message function_calls2.csv | cut -d, -f2 |cut -d. -f3 | ||
516 grep add_chat_message function_calls2.csv | cut -d, -f2 |cut -d. -f3- | ||
517 grep add_chat_message function_calls2.csv | cut -d, -f2 |cut -d. -f3- |sort |uniq -c | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
#+TITLE: Self-Improving Org File | ||
|
||
#+begin_ai | ||
Is Emacs the greatest editor? | ||
|
||
[AI]: As an AI language model, I don't have personal opinions. However, Emacs is highly regarded by many developers and power users as one of the most powerful and versatile text editors available. It's known for its extensive customizability and support for a wide range of programming languages and tasks. However, the perception of the "greatest" editor is subjective and depends on individual preferences and needs. Many other editors such as Vim, Atom, Sublime Text, and Visual Studio Code are also popular choices and have their own dedicated user bases. | ||
|
||
[ME]: | ||
#+end_ai | ||
|
||
|
||
#+begin_ai | ||
My idea is that we can create a self improving org file that will | ||
contain executable code that will send itself to a llm for review. | ||
|
||
changes to it will be recorded. Every time you save it will create a new version and analyse it. | ||
basically : | ||
on commit in git as a precommmit hook. | ||
in emacs | ||
|
||
also we should add spell checking and all the other emacs modules that will improve on our writing. | ||
|
||
so lets send this file to chatgpt and see what it says. | ||
please rewrite in org mode. | ||
|
||
[AI]: Sure! Here's a rewrite of your idea in org mode: | ||
|
||
#+TITLE: Self-Improving Org File | ||
|
||
* Idea | ||
The idea is to create a self-improving org file that contains executable code which can be sent to a Language Model (LLM) for review. The org file will record changes made to it and generate new versions every time it is saved. The proposed implementation involves using pre-commit hooks in Git and integrating with Emacs. | ||
|
||
* Features | ||
The self-improving org file will have the following features: | ||
- Automatic versioning: Every time the file is saved, a new version will be created and analyzed. | ||
- Continuous improvement: The org file will incorporate modules offered by Emacs, such as spell checking and other writing enhancement tools. | ||
- Integration with Git: Utilizing a pre-commit hook, the org file will be sent for review before committing changes in Git. | ||
|
||
* Execution Steps | ||
To implement this idea, the following steps can be followed: | ||
|
||
1. Set up the pre-commit hook in Git to trigger the evaluation process for the org file before committing changes. | ||
|
||
2. Configure Emacs to enable spell checking and other writing improvement modules. | ||
|
||
3. Develop the logic to analyze the org file, identifying areas of improvement and generating suggestions based on the analysis. | ||
|
||
4. Integrate the Language Model (LLM) with the org file to provide comprehensive feedback on the content, code, and writing style. | ||
|
||
5. Implement version control within the org file itself, allowing easy comparison between different versions and tracking of changes over time. | ||
|
||
6. Continuously refine the evaluation process by incorporating user feedback and fine-tuning the analysis algorithms. | ||
|
||
If implemented successfully, this self-improving org file can serve as a powerful tool for enhancing writing skills, improving code quality, and facilitating the review and learning process. | ||
|
||
Let's further explore this idea by interacting with ChatGPT. | ||
|
||
[ME]: | ||
#+end_ai | ||
|
||
* Idea | ||
The idea is to create a self-improving org file that contains executable code which can be sent to a Language Model (LLM) for review. The org file will record changes made to it and generate new versions every time it is saved. The proposed implementation involves using pre-commit hooks in Git and integrating with Emacs. | ||
|
||
* Features | ||
The self-improving org file will have the following features: | ||
- Automatic versioning: Every time the file is saved, a new version will be created and analyzed. | ||
- Continuous improvement: The org file will incorporate modules offered by Emacs, such as spell checking and other writing enhancement tools. | ||
- Integration with Git: Utilizing a pre-commit hook, the org file will be sent for review before committing changes in Git. | ||
|
||
* Execution Steps | ||
To implement this idea, the following steps can be followed: | ||
|
||
1. Set up the pre-commit hook in Git to trigger the evaluation process for the org file before committing changes. | ||
|
||
2. Configure Emacs to enable spell checking and other writing improvement modules. | ||
|
||
#+begin_ai | ||
using straight-el or git, use Emacs to enable spell checking and other writing improvement modules. | ||
|
||
[AI]: To enable spell checking and other writing improvement modules in Emacs using straight.el or git, you can follow the steps below: | ||
|
||
1. Install straight.el: | ||
- If you are using straight.el, add the following code to your `init.el` or `.emacs` file to bootstrap straight.el: | ||
|
||
```elisp | ||
;; Bootstrap straight.el | ||
(defvar bootstrap-version) | ||
(let ((bootstrap-file | ||
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory)) | ||
(bootstrap-version 5)) | ||
(load bootstrap-file nil 'nomessage)) | ||
``` | ||
|
||
2. Install the desired packages: | ||
- For spell checking, you can use the package `flyspell`. To install it, add the following code to your `init.el` or `.emacs` file: | ||
|
||
```elisp | ||
(straight-use-package 'flyspell) | ||
(add-hook 'text-mode-hook 'flyspell-mode) | ||
(add-hook 'prog-mode-hook 'flyspell-prog-mode) | ||
``` | ||
|
||
- If you want additional writing improvement modules, you can install packages like `langtool` (grammar checker) or `writegood-mode` (style checker). To install them, add the following lines to your `init.el` or `.emacs` file after the spell checking setup: | ||
|
||
```elisp | ||
(straight-use-package 'langtool) | ||
(straight-use-package 'writegood-mode) | ||
``` | ||
|
||
3. Configure the packages: | ||
- For `langtool`, you may need to set up the path to the Java executable and the language to use for checking. Add the following lines to your `init.el` or `.emacs` file: | ||
|
||
```elisp | ||
(setq langtool-java-bin "path/to/java") ;; Replace "path/to/java" with the actual path to your Java executable | ||
(setq langtool-default-language "<language>") ;; Replace "<language>" with the language you want to check (e.g., "en-US") | ||
``` | ||
|
||
4. Save the configurations and restart Emacs. | ||
|
||
Now, Emacs should have spell checking enabled using `flyspell`, along with any additional writing improvement modules you installed, such as `langtool` and `writegood-mode`. You can use these features to check your spelling, grammar, and style while writing. | ||
|
||
[ME]: | ||
#+end_ai | ||
|
||
3. Develop the logic to analyze the org file, identifying areas of improvement and generating suggestions based on the analysis. | ||
|
||
4. Integrate the Language Model (LLM) with the org file to provide comprehensive feedback on the content, code, and writing style. | ||
|
||
5. Implement version control within the org file itself, allowing easy comparison between different versions and tracking of changes over time. | ||
|
||
6. Continuously refine the evaluation process by incorporating user feedback and fine-tuning the analysis algorithms. | ||
|
||
If implemented successfully, this self-improving org file can serve as a powerful tool for enhancing writing skills, improving code quality, and facilitating the review and learning process. | ||
|
||
Let's further explore this idea by interacting with ChatGPT. |