neokd / NeoGPT

Chat effortlessly, execute commands, and interpret code with Llama3, Phi3, and more - your local AI assistant. Enjoy seamless interaction while ensuring ultimate privacy
https://neogpt.dev
MIT License
68 stars 60 forks source link

Export Config for NeoGPT #111

Closed neokd closed 5 months ago

neokd commented 7 months ago

Description: We need to implement a configuration export function for NeoGPT to streamline its setup and usage. The exported configuration will capture essential details about the NeoGPT version, environment, persona, UI settings, model type, export date, model details, database information, directories, and memory configurations.

Implementation Steps:

  1. Define a function export_config() to handle the export process.
  2. Capture NeoGPT-related details such as version, environment, persona, UI settings, model type, and export date.
  3. Include model-specific information like model name, file, and embedding model.
  4. Capture database details, including the parent directory.
  5. Include directory information, such as the source directory and workspace directory.
  6. Capture memory configurations, including the default memory key.
  7. Save the configuration to a YAML file, e.g., "settings/settings.yaml".
bryce-seefieldt commented 6 months ago

Hi there, Being that this is so closely related to Issue-112 It made sense to me to try and tackle this issue first so I could get a better sense of the configuration settings that would be used to write a load-config() function for Issue-112.

I have been able to implement the majority of the solution for export_config() and have created a draft PR: PR 122

Have a look at the PR and please be in touch with your thoughts on how to complete number 2 in your requirements for this issue above.

neokd commented 6 months ago

That's is to add details like export date of the file or any specific persona to be used something like that

bryce-seefieldt commented 6 months ago

@neokd - I think this can be closed with PR 122 Please let me know if you see anything else that can be done to get this to 100%. I was looking at maybe adding some unit tests for the export_config() and import_config() as well as their corresponding command line switches.

neokd commented 6 months ago

@bryce-seefieldt you can create a directory tests in the root of the project and write code to check the functionality of importing and exporting the config. You can create an issue.

Also this issue is still in progress because I'm still not able to overwrite some settings for example to trigger the UI.

You can also check the implementation of import-config and let me know.

bryce-seefieldt commented 6 months ago

@bryce-seefieldt you can create a directory tests in the root of the project and write code to check the functionality of importing and exporting the config. You can create an issue.

Also this issue is still in progress because I'm still not able to overwrite some settings for example to trigger the UI.

You can also check the implementation of import-config and let me know.

Thanks @neokd - I will generate a PR tonight for a few very small changes I think would be helpful in the load_config function. In addition, I will also provide an additional PR in the next 48 hours that includes unit testing of export and load config fucntionality as discussed above. Hope that works for you.

neokd commented 6 months ago

Yeah sure ✨

neokd commented 5 months ago

Closing this since we have completed it