Spaces:
Build error
Build error
# Custom-Knowledge-Based Querying with ChatGPT | |
This project is a Python backend service that runs on Google Cloud Functions. It utilizes ChatGPT to provide custom knowledge-based querying by reading an `index.json` file from Firebase Storage and using it as a Llama index for generating responses. | |
## Features | |
- Reads `index.json` file from Firebase Storage and uses it as a Llama index | |
- Provides custom knowledge-based querying powered by ChatGPT | |
- Accepts `input_text` as an API parameter and generates a relevant response along with the source of the information | |
## Installation & Deployment | |
This project is designed to be deployed as a Google Cloud Function. Follow the official [Google Cloud Functions documentation](https://cloud.google.com/functions/docs) to set up and deploy the function. | |
Deploy using script below in the command line: | |
`gcloud functions deploy hello_world --runtime python310 --trigger-http --allow-unauthenticated --entry-point hello_world --source . --set-env-vars OPENAI_API_KEY=YOUR_SECRET_KEY --memory 1024MB` | |
Change YOUR_SECRET_KEY to your own OpenAI secret key | |
### Prerequisites | |
- A Google Cloud account with billing enabled | |
- Firebase Storage configured with an `index.json` file | |
- Google Cloud SDK installed on your local machine | |
- OpenAI API key | |
### Setup | |
1. Clone this repository. | |
2. Install the required dependencies with `pip install -r requirements.txt`. | |
3. Set the `OPENAI_API_KEY` environment variable in your Google Cloud Function configuration. | |
4. Configure the `storageBucket` option in `firebase_admin.initialize_app()` to match your Firebase Storage bucket. | |
5. Deploy the function to Google Cloud Functions following their documentation. | |
## Usage | |
Make a GET request to the deployed Cloud Function with an `input_text` query parameter. The response will be a JSON object containing a generated response and the source of the information. | |
## http | |
GET https://<your-cloud-function-url>/hello_world?input_text=<your-query-text> | |
## Contributing | |
Fork the project. | |
Create a new branch (git checkout -b feature_branch). | |
Commit your changes (git commit -am 'Add a new feature'). | |
Push to the branch (git push origin feature_branch). | |
Create a new Pull Request. | |
## License | |
This project is licensed under the MIT License. | |