title | emoji | app_file | requirements | python | sdk | sdk_version |
---|---|---|---|---|---|---|
AnkiGen |
📚 |
app.py |
requirements.txt |
3.12 |
gradio |
4.44.0 |
AnkiGen is a Gradio-based web application that generates Anki-compatible CSV files using Large Language Models (LLMs) based on user-specified subjects and preferences.
- Generate Anki cards for various subjects
- Customizable number of topics and cards per topic
- User-friendly interface powered by Gradio
- Exports to CSV format compatible with Anki import
- Utilizes LLMs for high-quality content generation
- model dropdown - uses gpt4o-mini by default
- cloze (checkbox?)
- Clone this repository:
git clone https://github.com/brickfrog/ankigen.git
cd ankigen
- Install the required dependencies:
pip install -r requirements.txt
- Set up your OpenAI API key (required for LLM functionality).
- Run the application:
gradio app.py --demo-name ankigen
-
Open your web browser and navigate to the provided local URL (typically
http://127.0.0.1:7860
). -
In the application interface:
- Enter your OpenAI API key
- Specify the subject you want to create cards for
- Adjust the number of topics and cards per topic
- (Optional) Add any preference prompts
- Click "Generate Cards"
-
Review the generated cards in the interface.
-
Click "Export to CSV" to download the Anki-compatible file.
The generated CSV file includes the following fields:
- Index
- Topic
- Question
- Answer
- Explanation
- Example
You can create a new note type in Anki with these fields to handle importing.
This project is built with:
- Python 3.12
- Gradio 4.44.0
To contribute or modify:
- Make your changes in
app.py
- Update
requirements.txt
if you add new dependencies - Test thoroughly before submitting pull requests
BSD 2.0
- This project uses the Gradio library (https://gradio.app/) for the web interface
- Card generation is powered by OpenAI's language models