Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The Road to NG #14

Open
intellectronica opened this issue Nov 30, 2024 · 0 comments
Open

The Road to NG #14

intellectronica opened this issue Nov 30, 2024 · 0 comments
Assignees

Comments

@intellectronica
Copy link
Owner

intellectronica commented Nov 30, 2024

MkFlashcards grew from a script to an applet, and I have now used it for a couple dozen decks, and received some feedback from others, so I feel ready to start working on its next, more mature iteration. Here are some thoughts I have on what's coming:

  • Fixed set of models, likely from OpenAI (DONE in Prep for NG #15 )
    • Easier to evolve prompts for a fixed set of models than try to support everything
    • I love Claude, and I would still like to try to use Gemini and maybe some other models, but need to prioritise this well below functionality
    • It may prove beneficial to use a mix of models rather than the same model for all tasks, and standardising on a single provider makes this easier
  • Use Pydantic-AI ( Convert to Pydantic AI #13 )
    • BLOCKER, since it’s still pre-alpha, but I’m not in a rush, and they seem to be moving fast
    • It’s going to be great for working with structured outputs
    • It’s integrated with Logfire - great for monitoring and debugging
  • Proper server app, with users, sessions, and persistence
    • Need to have an easy way for people to run it locally in single user mode
    • What about API key? Possible solutions:
      • Keep that browser-based and send it over with every request - a bit dumb TBH
      • Record user’s API key on the server (encourage them to have a unique key and limits)
      • Use a central API key and charge users for usage - that would be cool, but how hard is it for a single developer with not too much time to manage a small SaaS?
    • Allow users to set custom instructions
    • Save output of intermediate steps - the content is valuable and can be recycled
    • Managing decks and cards
    • Sharing decks (would be cool to have a library of useful decks)
    • Templating for cards (how? jinja? something simpler?)
    • Allow exporting in multiple useful formats
      • Mochi
      • Anki
      • CSV
      • PDF
      • HTML / Markdown
  • Read the text and generate cards in multiple passes. Something like:
    • Read instructions and plan steps
    • Summary
    • Remove unnecessary parts of the text (footnotes, etc…)
    • Chunk (how well can we chunk? doesn’t have to be equal chunks)
    • For each chunk:
      • Decide on topics for cards
      • For each topic:
        • Write questions
        • Answer questions
        • Look for quotes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant