SRSの進化がすごいらしい 間隔反復システム、どう良くなった?
引用元:https://news.ycombinator.com/item?id=44020591
SRSってすごい進化してるらしいね.でも,俺がもっと大事だと思うのは,何かを読んで理解してからSRSに移す間の部分なんだ.ウェブブラウザやPDFからAnkiとかMochiみたいなSRSへ簡単にフラッシュカードを作る専用ツールがほとんどないのが困る.OSの機能みたいにシームレスに動くのが理想なんだよ.邪魔にならないMac friendlyなツール知ってる人いたら教えて!
>既存ツールから簡単にカード作成
これは誤解だよ.SRSの本当の利点は,どんなカードを作るか考えるプロセスにあるんだ.概念を深く掘り下げて,自分でカードにする作業自体が理解をものすごく助けてくれるんだよ.これは難しいスキルで,だから悪いカード作って諦める人が多いのかもね.SRSは暗記だけじゃなく,理解を深めるのにも使えるんだよ.
>悪いカード作って諦める
もしそうなら,長いテキスト(本とか)から良いフラッシュカードを作ってくれるプログラムの方が,自分で変なカード作るよりずっと優れてるんじゃないの?
こういう連携にはmacOSのサービス機能が良いと思うよ.テキストを選択して右クリックすると,SRSアプリが提供するサービスで「新しいSRSカード作成」みたいなのが選べるようにするんだ.その場でカード作成ダイアログが開くイメージかな.アプリ開発者が直接連携しなくても使えるのがメリットだね.
自分のアプリ(Fresh Cards)で,WebやPDFからのカードインポート要望がよくあるんだけど,どう実現すればいいか難しいんだ.ハイライトして作る対話式?それとも自動生成?何がカードにする価値があって,問題の粒度はどうする?日付や名前みたいな特定の事実だけじゃ,教材によっては使えないかも.みんなのニーズに合わせるのって,すごく大変そうだよ.何かアイデアある?
Fresh Cards開発ありがとう!良い質問だね.ソースから直接カードは面倒だから,間に「受信箱」を入れるのはどう?面白いと思ったらハイライトして受信箱へ.後でそこでAIとか使ってカード化するんだ.ハイライト→選別→カード化,って明確なステップに分けられる.これで,ハイライトしたものが価値あるか判断できるし,今のAIを使えば簡単にできると思うよ.
macOSサービスの話,教えてくれてありがとう!調べてみるよ.俺もOSがこの機能をネイティブに提供すべきって思い始めてたんだ.普及のためにも使いやすさのためにもね.SRSがAPI公開してれば,今のShortcutsでもPoCはできそうかもね.
使ったことないけど,Supermemoの「キラー機能」の一つだって聞いたことあるよ.PDFビューアでテキストを読みながら,半自動でフラッシュカードを作れるモードがあるらしい.そんな感じ.前に言った通り,俺は使ったことないけどね.
ちょうどRemNoteのAIカード生成機能試してみたんだけど,今のところマジすごいね.PDF,ウェブページ,ノートからカード作れるんだよ.
これが俺たちがRemNoteを作った理由だよ!PDFやWebサイト,YouTubeから直接カード作れるんだ.AIでも,自分でハイライトして作ることもできるよ.OS連携じゃなく,一つのツールで全部やる方が集中できて良いと思うな.Chrome拡張も試したけど,結局ツール内で完結させるのが一番しっくりくるんだ.
>OSがネイティブでこういう機能のhookを提供する必要があるって話、ほんとそう思うんだよね。でもさ、結局開発者がそのhook使ってくれるか次第なんだよな。最近のサードパーティアプリって、特定のプラットフォームに特化した連携とか自動化機能全然つけないでしょ。最低限のことだけやって「とりあえず動く」っていうのが当たり前になっちゃった。
これ、AnkiがAndroidで既にカスタムintent使ってやってるやり方だよ。
今日午後、Gemini 2.5 ProでAnkiカード作って試験勉強しようとしたとこなんだ。やり方超シンプル:素材全部(トークン10万くらい)aistudioに貼り付けて、txt形式でフラッシュカード生成。今のとこ超いい感じだし、カードもそのままで十分学習になると思う(いくつか消したり編集したりしたいのはあるけど、勉強の邪魔にはなってない)。
INBOXのアイデア、マジでいい改善だね!それと、INBOXをN時間後とかNサイズ後に処理するリマインダーもプラスで欲しいな。どんなシステムでも一番難しいのは、それを習慣にする事だよね。
>読む/理解するのとSRSの間にある空白…そういうツール知ってる人いたら教えて欲しいです。
フラッシュカードじゃなくコンテンツで復習するシステム考えてるよ。内容に単語や文法でタグ付け、自分にとっての難易度を推定。難易度と学習効果のバランス見て読むコンテンツ選ぶ。忘れそうなものを復習する自然な「間隔反復」で、復習時間をコンテンツ読むのに使う感じ。
SuperMemoはPDFダメでHTMLだけ。補助ツールも面倒。UI最悪で結局Ankiに戻った。タスク管理とか凄いけど、ブラウザサポートとか技術選択に問題あり。インクリメンタルリーディングもPDF対応なしでWikipediaばっか。
Gemini使って子供の試験対策作ってるけどマジすごい。それでGenji Monogatariの穴埋めAnkiカードも作れるか試したよ。トップ5000語以外でクローズ削除する設定で。古典日本語だけど結構いい感じにできた。テキスト貼り付けたらテスト形式で出力されるから学習に使えるね。
まず試した感じ、これは期待できそうだね。明日プロ版ちゃんと試してじっくり使ってみるよ。でもさ:
PDF結構読むんだけど、一文クリックしてカード提案してもらったり、自分で入力したりできる。それだけでも「space in between」のいいスタートだよ。
Anki Android版持ってるけど、他のアプリから使うオプション見たことないな。何か設定必要なの?
なんかプロンプトのコツとか学んだことある?それとも普通の質問で十分だった?この用途でGoogle NotebookLM試してみたいなと思ってさ。
Macなら、選んだテキストとかスクショを受け取って、AnkiConnectに送って新しいノートを作るショートカット作れるじゃん。これを共有シートに追加すれば、どのアプリからでもノート作れるよ。あとでAnkiでノート見直して質問足したり、マジ面倒なら裏側の内容をLLMに送って質問作ってもらったりすればいいさ。
難しいと思うな、これ。システムごとに専門ツールが必要になるんじゃないかな。日本語向けにこういう方向のツール作ってるんだけど、内容とか文脈の抽出って目的によって全然違うから、何にでも使えるわけじゃないんだよね。
話の要点わかったか自信ないけど、あなたが普段やってることを(語学学習だけじゃなくて)まとめてみるね。
ー フラッシュカードじゃなくて、文章読んだりメモしたり。
ー その内容に難しさがわかるようにタグ付けしたり。
ー 復習したい時は、今一番効果ありそうだと感じる難しさのやつを選んだり。
「SRSの良さの半分はカード作成作業にある」ってのは同意だけど、SRSマニアの間じゃ言いすぎだよ。創造的な作業何でもそうだし。それより、自分で作るのが王道なのは、自分に合ったキュレーションができるから。他人が作ったやつは、自分の知識と合わないんだ。(自作SRSアプリの記事はここ:http://patched.network)
これMochiでほぼできるよ。PDFとかをChatGPTに貼って、Mochiのフォーマット簡単だからカード作らせられる。カード作る前に内容理解したいってのと相性良いんだ。MochiのAPI使えば自動追加もできるけど、僕は手動で確認したいからコピペで十分。
Ankiとかで独学してて、勉強準備に時間取られるのが嫌だったんだ。理想はAIに『勉強するものを探す』とか『復習を決める』の全部やってもらって、自分は勉強に集中すること。AIが大量のコンテンツから適切な難易度を選んで、復習単語を自然に入れてくれる感じ。特定のページや動画の読解に向けた学習もできるといいな。FacebookとかYoutubeみたいに、開いたら勝手に教材が出てくるのが理想。
詳しい答えありがとう。ソフトの境界が最初のカード作成のハードルになるって指摘、すごい良いね。覚えておきたいものをポンポン入れる受信箱みたいなアイデアとか、ハイライトしたとこ保存するブラウザプラグインやOSショートカットとかいいな。すぐにカードにする必要はないってのがミソだね。このワークフローを楽にするプロトタイプ、具体的にやれることありそう。AIに情報の断片渡してカード作らせるのもできそうだし。
Netflixとかで見てる番組の字幕取ってきて、フラッシュカードとか作れるブラウザツールとか、あるんじゃないの?
裏技だよ。LLM使って勉強するなら、Google DriveのCSVにAnkiカードを自動挿入するツール作って、スマホのAnkiと同期させるとマジで捗るよ。俺はLLMって思考サボる時に使うもんだと思ってるけど、勉強に使うならアリだね。
俺、Ankiカードの翌日のレビューに向けて、LLMに新しい例文を作ってもらうPythonスクリプト作ったんだ。単語は知ってても新しい文脈で認識できない問題を解決したくて。これで、カード見るたびに違う例文になるから、そのうち良くなるはず。
もっとコメントを表示(1)
コメント3で言ってた”単語は知ってても新しい文脈で認識できない”問題についてだね。これはフラッシュカード特化の訓練効果とか、言語には文脈で意味が変わる単語が多いのが原因だと思うよ。
俺の言語アプリ”dangerous”の宣伝だよ! LLMと間隔反復をベースにしてて、単語やフレーズの文脈説明、例文、文化注釈とか、音声認識テストもあるよ。今は招待制だけど、使いたい人にはコードあげる。
アプリすごく面白そうだね!招待ほしいな。次にChina行く時、会話上手くなりたいし。あと、Nepali語勉強してるんだけど、マイナー言語対応アプリないから大変なんだよね。LLMで変わるのに期待してる。ChatGPTのNepali語スキルはマジで最高らしいよ。
俺も招待すごく興味あるよ、これマジで斬新なコンセプトみたいだね!
俺もこのアプリすごく試してみたい、招待コード送ってくれると嬉しいな。
そうそう、目標言語のコンテンツを読んだり聞いたりする学習を増やそうとしてるんだけど、難易度がちょうどいいコンテンツ探すのがマジ大変なんだよね。難しすぎず、でも新しい学びがある、みたいなやつ。
それ、めちゃくちゃ良いアイデアだね。俺、初期のAnki貢献者だったんだけど、SRSで結構時間無駄にしちゃったんだ。2008年頃に知ってた言語ブロガーたちはみんなAnkiに夢中だったね。
もしまたJapaneseを学ぶなら(20年話してないからやるかも)、Ankiは以下に使うかな:
音、単音節、2-3音節のドリル、文中のpitch accentsの識別と、hiraganaとkatakanaの覚え直し。
初期過ぎたら、学習者向けpodcastを聴いてtranscriptsを家で読むのをメインにして、後で外出中に同じpodcastを聴き直すと思う。理解してる文脈で単語を思い出す方がずっと楽で役に立つよ。
長年traditional Chineseを読んでなかったらkanji学習にもAnki使っただろうな。背景あるから、audio booksを聴きながら読むだけで文脈からkanji全部理解できるか試すと思う。TV seriesも、アクセスできれば最高だよ。シーズン通して似たvocabularyが多いからね。
俺、まさにこの問題を解決しようとしてるreader app作ってるんだ。proficiencyに合わせて各articleを段階的にsimplified versionsにしたものを提供するんだ。
もしtarget languageがChineseなら、https://reader.longyan.io/landing で試してみてくれよ。login不要、feedbackくれたら嬉しい。
Sure. こういうprojectは結構あるみたいだね。baseをtraditional charactersにするのを強く勧めるよ。multiple charactersをsimplified formsにmapするのはすごく簡単だけど、simplified formsをtraditional versionsにdisambiguateするのはずっと難しいから。
Related comment on another app: https://news.ycombinator.com/item?id=43769831
見てくれてありがとう。実はtraditional charactersから始めたんだけど、”90%以上のstudentsがsimplifiedしかやらない”って気づいてswitchしたんだ。
convertするだけなのはbest approachじゃないと俺も思う。両方で違うcontent見つける方が良いね。studentがtraditional script学びたいなら、usually Taiwanのcontentを欲しがるし、Chinaじゃないんだ。逆も同じ。
Chineseをseriousに学ぶほぼ全ての人は、1960年代以前に書かれたものを読みたいと思ってるだろうし、それらはliteralmente traditional versionsからsimplified versionsにconvertされてるんだ。
Hong Kong, TW, 海外のChinese communitiesで生まれたpopular contentもDitto。
databaseで”hair”と”emit”を同じentryにstoreすることにlong-term gainはないよ。髮と發をseparately storeして、発を両方のsimplificationとして一緒にやるのは、今small effortだけど、将来ずっとconstrainが少なくなる。俺、過去15年で約40種類のChinese learning appsでこのpitfallを見てきたんだ。Du ChineseとPlecoのようなfew appsだけがearly on正しくやったね。
まだなら、target languageのcomprehensible input siteがあるかcheckしてみて。例えばspanishなら https://www.dreamingspanish.com/ があるよ。各種difficultiesのspeakingとlisteningのvideosを出してるんだ。
俺のexperienceだとpretty well workするよ、listening comprehensionとpronunciationをbuildしようとしてるならね。でもjust one tool in tool beltだからrecommendするのはjust as augmenting other language learning toolsだよ。
Very well workするよ、でもhigh effort activitiesとmixする場合に比べてvery slowだけどね。
That’s a really clever use for LLMs, 俺exact same problemを俺のAnki deckで抱えてるんだ。historical sentences for each cardは全てstoreしてるの?それともjust a destructive overwrite each time?
これ便利そうじゃん.誰かこれできるAnkiのプラグイン作ってくんないかな.もう似たようなのあるのかな?
それめちゃくちゃ役に立ちそうなプロジェクトだね!!公開するの考えたことある?
私が書いたやつは、基本的なアイデア以外は、あんまり広く使えるものじゃないと思うんだよね.自分のデッキ向けにカードのレイアウトとか細かい前提で作ったから、柔軟性はないんだ.調整するのは難しくないと思うけど、まあすごく単純なスクリプトだから、自分で変えるレベルになったら、イチから書くのとそんなに変わらないかもね.
> LLMで勉強してるなら、LLMが議論してるトピックのAnkiカードをgoogle driveのcsvに挿入するMCPツールを作って、それをスマホのAnkiデッキと同期するんだ.個人的には、どうやるのか詳しいブログ記事が見たいな.少なくとも知りたいのは:
csvをAnkiカードにどう同期してるか、LLMのレスポンスからCSV作成へのMCP連携はどうなってるか.
今週時間できたら、やり方示すREADMEをここに載せるかも.難しくないよ.https://github.com/mark3labs/mcp-goでmcp作って.AnkiDroidはgoogle driveからcsvリンクできる設定ある.あとはローカルとDriveの同期.LLMにあらゆるプロンプトでMCP Ankiツール使えるって教えて、システムプロンプトで、概念に詰まってそうならAnkiカード作るように指示する感じ.
ChatGPT 4oの音声モードが、中国語の基礎勉強にめちゃくちゃ効いてるよ.いつかモデルの限界にぶつかるだろうけど、部屋中歩き回って色んな物の名前聞いたり、単語が他の単語と関係あるか聞いたりするのがすごく楽しい.短い文章作ったり、文法の即時検証もすごすぎ.まだChatGPTにMCPはないけど、レビューした内容を構造化された形式で出力してくれるようチャットに頼めるね.
Ankiの不満:データモデルが嫌い.ノートの集まりがあって、それから派生するカードのセットがあって、さらに間隔反復の履歴があるべきだと思う.特定のセッションで勉強するカードを制限する方法も必要(書く練習とか).Ankiは層を分離してないみたい.全部一枚岩.インポートもエクスポートも共有もUI以外は嫌.外部でデータ操作できないと詰む.この問題ないシステムって他にある?
君がここで挙げた点は全部間違ってるって、もう別のコメントで深く突っ込まれてるのがすごいね.それに加えて、Ankiは私が触ってきたオープンソースソフトウェアの中でも一番ドキュメントが整ってる方だよ.プログラムできるなら、ChatGPTが基本的なタスクは何でも処理できるし、私は自分の洞察のために定期的にsqliteデータベースをデータマイニングしてるよ.
> ノート集が必要だよね(ダウンロードしたりLLMで作ったり自分で作ったり友達と共有したり)。そのノート集の上に学習したいカードのセットがあるべき
それってAnkiじゃね? カード集があって、それぞれのカードはそこから派生した1つ以上のデッキに入れられるじゃん。
> 特定のセッションでどのカードを勉強するか制限する方法も必要だ
それもデッキだよ。「日本語」デッキがあって、その中に「日本語::書き」みたいなサブデッキを作れば、書く練習が必要なカードだけに絞れるしね。
Better Tagsってのを使えば、タグでカード絞って、アドホックなタグ検索でサブデッキ作って一部だけ勉強することもできるんだよ。
デッキを増やして、勉強したいサブセットをそのセッションで勉強するってやり方じゃダメなの?
> Ankiはこういう層を全く分けてないみたいだ。全部巨大なデータベースになってる
デッキは独立したファイルで、共有、編集、作成、勉強、推論ができるじゃん。
Ankiの間隔反復モデル(FSRSと古いモデルがある)は、複数のモデルがあるって事実とは明らかに別だしね。
> エクスポートがめんどくさい。共有がめんどくさい
ただのファイル(実質Zipファイル)じゃん。何がめんどくさいの?
> Ankiを試すたびに、Ankiの外で自分のデータを操作できないってところで引っかかる
Ankiデッキを外部で操作するためのライブラリは、ほとんどのプログラミング言語であるよ。文字通り、メディアや辞書からAnkiカードを作る「マイニング」ツールとか、生成・インポートできるツールは何十種類もあるんだから。
オープンソースだし、コードもクリーンなライブラリアブストラクションがあるから、中のデータを取り出すなんて超簡単だよ。
> こんな問題がないシステムって他にある?
あんたが挙げた問題は全部、他のソフトで経験したけどAnkiが解決してくれたことばっかりだよ。だから俺にとってはそのシステムが”Anki”なんだ。
> それってAnkiじゃね? カード集があって、それぞれのカードはそこから派生した1つ以上のデッキに入れられるじゃん。
まあ、ちょっと違うかな? 俺がわかる限り(そんなに深く掘り下げてないけど)、デッキっていうのがあって、デッキの中にノート、テンプレート(あとカード。これはノートとテンプレートから生成されるものとは別に存在するか怪しい?)、そして学習情報が入ってるんだよね。
デッキのテキストとかマークアップ内容はエクスポートできるけど、メディアはできない。テキストファイルにして、一応ロスなく再インポートできるって言われてる。
学習情報なしでデッキをエクスポートして共有もできるけど、再インポートできるか怪しいんだよね。
それでコレクションっていう、全部ひっくるめた世界があるわけ。デッキと学習情報全部込みで。
> それもデッキだよ。日本語デッキがあって、その中に日本語::書きみたいなサブデッキを作れば、書く練習が必要なカードだけに絞れるしね。
多分だけどさ、高精度なノートがあるソースから日本語デッキをインポートしたとして、それを書き込み用サブデッキに分割したとするじゃん。そしたら元のソースが新しい単語のノートを追加したり変更したりしても、結果をマージするのは基本的にサポートされてないと思うんだ。
> Ankiはこういう層を全く分けてないみたいだ。全部巨大なデータベースになってる
> デッキは独立したファイルで、共有、編集、作成、勉強、推論ができるじゃん。
そう、でも全部モノリスとしてだけ(これもわかる範囲だけど)。Anki Deck Package (.apkg)ってのをエクスポートできるけど、これをgitで管理しても意味ないじゃん。
学習情報とテンプレートを、元になるノートとは別にエクスポートはできないんだよね(もしできても、そのオプションは見つけられなかった)。
> エクスポートがめんどくさい。共有がめんどくさい
> ただのファイル(実質Zipファイル)じゃん。何がめんどくさいの?
ExcelとかOpenDocumentのシートファイルもZipファイルだよ。
でもそれぞれのツールはAnkiほど制限がきつくないし、ユーザーがZip解凍することなんて想定してないじゃん。(それにマージとかテキストのインポート/エクスポート機能も弱いのが残念だけど)
俺が間違ってる可能性もあるけどね。でもAnkiはさ、モダンなプログラミング言語みたいに、分解されたワークフローには優しくないみたいなんだ。
なんか俺が何か誤解してるのかもしれないけど、あんたのコメントにAnkiの根本的なデータモデルの欠陥を特定してるものが見つからないんだよね。問題はAnkiのデータ管理についてみたいじゃない?
だから強くお勧めしたいのが anki-connect (https://git.sr.ht/~foosoft/anki-connect) っていうツールだよ。これはAnkiのノート、カード、デッキ、メディア添付ファイルに対してREST APIでCRUD操作ができるんだ。
あるいは、何を勉強してるのか、データの形式はどんなか、Ankiでやろうとしたワークフローがどう具体的にうまくいかなかったのか、もう少し詳しく教えてくれたら、誰も解決策を提案できないってことはないと思うよ。
追記:あと、最初の投稿の質問にも答えるね。他に良いSRSツールがあるかって? 俺は一度もそんなの見つけたことないな。欠点や不満もあるけど、Ankiは肝心なところが良いし、ほとんどのユースケースをサポートできるくらい拡張性もあるし、データのポータビリティも素晴らしいんだ。
多分”データモデル”って言葉が悪かったのかも。
最後にAnkiをちゃんと使おうとしたとき、中国語のキャラクターカードを2〜3人で使うように設定したかったんだ。高品質らしいデッキをいくつかオンラインで見つけてダウンロードしたんだけど、たくさんのキャラクターが入ってて、そのユーザーには入れたくないのが(ほとんど)含まれてたんだよね。デッキからコンテンツを削除するのはなんか違う気がしたし、自分が欲しい特定のテンプレートだけで実用的なシステムを作るのも不必要に複雑に思えたんだ(これらのデッキはノートにたくさんのフィールドがあって、それは素晴らしいんだけど、全部使いたくなかったんだ)。
それで、実際に複数のユーザーで使えるようにするのが、保守が大変そうな作業に思えたんだ。俺はノートのセットを維持・管理して、各ユーザーが勉強してるものを必要に応じてアップデートできるようにしたかったんだよ。
一番基本的な失敗として、Ankiは「デッキ」(ノートのセットという意味)と「デッキ」(特定の人が勉強するものという意味)の概念をほとんど分けてないんだ。それがすごく制限に感じたんだよね。
俺が本当に欲しかったのは、ノートのコレクションだったと思うんだ。それぞれのノートにはIDとかたくさんのフィールド、それに関連するメディアがあるような。そのコレクションはコピー可能で、理想的にはバージョン管理されてるべきなんだ。
そして、そのノートを参照するスタディセットを作りたかったんだ。その中からサブセットを選んで、利用可能なテンプレート化されたカードのサブセットを選んで、学習統計を追跡するようなね。
実際、あんたの指摘は全部正しかったし、データモデルはひどいよ。もう何年も使ってるけどさ。他のコメントの人は、ただソフトウェアができることのリストを挙げて、「それで十分じゃないの?」って何度も言ってるだけだろ。違うんだよ、十分じゃないんだ。Ankiのフラッシュカードの概念とか、それをどう保存・操作するかっていうのは、最悪なんだよ。
Ankiでは、本来些細なことなのにやるのがすごく難しかったり、本来できるはずなのに不可能だったりすることが山ほどあるんだ。それにできることって言ったら、コレクション全体に対してクエリを実行するようなやつで、デッキを10個くらい追加したらアプリがノロくなる原因になってるんだ。
で、全体的に言えばさ:俺が気にしないし、たぶん調整すべきじゃないことを調整できすぎたり、本来簡単なのにできないことがあったりするんだ。
ダメなんだよ。Ankidroidはちょっとマシだけど、あっちもデータモデルには手が出せないんだ。
俺のAnkiでの暗記の個人的なワークフローはLLMを使ってこうやってるよ:まず教科書を読んで内容を理解することが大事。情報を原子レベルに分解しただけじゃ、それがどう連携して機能するかわからないからね(例えば、一価不飽和脂肪酸、多価不飽和脂肪酸、飽和脂肪酸、トランス脂肪酸があるってことは学べるけど、事前に教科書とか他のソースで読まないと、それらがどう違うか(化学構造、生物学的機能など)は理解できない)。
内容を理解したら、LLMにドキュメント(教科書など)を食わせて、以下のプロンプトを出すんだ。
> 付属のPDFを使った教科書ドキュメントからフラッシュカードを生成したい。それぞれのフラッシュカードは質問とそれに対応する回答をプレーンテキストのコードブロック形式で含むこと。構造は「質問”,”回答」とすること。
> 教科書から主要な概念、定義、説明を抽出すること。もしテキストでヤード・ポンド法が使われていたら、メートル法に変換すること。数学的な記号や方程式は、Ankiにコピーしたテキストをインポートするので、インラインのMathJax記法でフォーマットすること。質問は明確で簡潔に、回答は直接的かつ包括的な応答になるようにすること。
テキストが生成されたら、正確性をチェックするんだ(95%のケースでカードは正確だよ)。それで自分のデッキにインポートする。残りは昔ながらのAnkiでの暗記だよ。
それはデフォルトのモデルが一般ユーザー向けに設計されてるからだよ。もしあなたがちゃんと座ってドキュメントとじっくり向き合ったら、管理にはデッキやコレクションを使うべきじゃなくて、タグを使うべきだって気づくはずだよ。デッキとコレクションは別の目的のための別の抽象化なんだ。
俺は医学生だけど、医学界はAnkiを基本的にマスターしてるんだ。100万人以上の医学生が使ってるAnKingデッキは、3万5千枚以上のカードがあって、多数の学習リソースでクロス**タグ付けされてるんだ。これは単一の「デッキ」上に存在してて、定期的にアップデートがあるんだ。俺は4万枚以上のカードに対して、基本的に即時のクエリを日常的に実行してるよ。
医学界のAnkiは、このワークフローを基本的にマスターしてて、最初のコメントの人の不満は完全に間違ってるか、Ankiのデータモデルを誤解してることからきてるんだ。
簡単に言うと、サブデッキ、フィルタリングデッキ、カードとノートの違いなんかを無視してさ:カードは一つのデッキにしか属せないけど、複数のタグを持つことができるんだ。具体的にデータモデルで何が違って見たいの?
もっとコメントを表示(2)
SQLite dbはどこに置いてるの? ローカルデータベース作ってLLMに食わせたいって考えてるんだけど、経験なくてさ。
言語学習だけだけど、多分俺のTheHardway.appのモデルの方があなたに合ってるかもね(markdownっぽいノートの中にフラッシュカードがあるんだ)。
@jaredklewis amlutoさんが言ってた困り事、どうやって解決してるか知りたいな。俺もこれで同じような苦労をしたことがあるんだ。特に子供たちにそれぞれ使わせたいデッキを作って、でも更新も続けたいって時。
デッキに変更を加えるたびにすごい手間がかかる気がしたんだ。これは数年前の話で詳細は覚えてないけど、デッキを編集し続けて、複数のユーザーにサブスクみたいにアップデートが反映される合理的な方法があるなら知りたいな。たぶん方法あるんだろうけど、俺が気づかなかっただけだと思う。
35,000+ cards?すごいね.ちょっと聞きたいんだけど,個々の学生はどうやって勉強したいカードを選んでるの?既存のタグか,自分で作ったカスタムタグかな?もしカスタムタグを作ったら,ローカルのデッキをupstreamとどうやって同期させるの?
ごめん,でも君のランディングページ,マジでひどいよ.タブレットだとアプリのこと学べないの?それに,アプリについてまだ何も知らないのに,メールアドレスを教えないといけないの?提案なんだけど:サイトを見させて,アプリについて学ばせてくれたら,後でデスクトップで開くか決めるよ.
数ヶ月前に試したけど,カードの質には納得できなかったんだ.良いカードってのがどんなのか伝えるのも難しいんだけど,細かいとこに囚われて全体像を見失うのは良くない気がするんだ.あなたは正確さだけコメントしてたけど,関連性とか,LLMが作ったフラッシュカードってどれくらい使えるの?正直言うと,自分で作ったフラッシュカードもレビュー中にダメだって気づいていくつか削除したことあるから,LLMで作ったやつでも同じようにできると思うんだ,無関係なやつの割合が同じくらいならね.
うん,もし言語を勉強してるなら,レストランの単語グループと航空旅行のグループみたいに分けたらいいよ.そうすればユーザーも関連付けやすいからね.
まさにこれをやるためのワークフローを探してたんだ!どのLLMを使ってるの?デッキを章とかセクションごとに構成するために特別なことしてる?
Ankiをどう整理して使うかを学ぶことの,学習曲線が悪い(皮肉だね)って議論はあり得ると思うよ.
親コメントに返信したんだけど,https://www.ankicollab.com/をチェックしてみたら?自分は自己学習でAnkiしか使ったことないから使ったことはないんだけど,あなたのユースケースには良いかもしれないよ?
何言ってるの?Ankiには”ノート”っていう概念が明確にあって,そこから一つ以上の”カード”が作られるんだよ.特定のカードタイプだけ含むカスタムデッキを絶対簡単に作れるんだ.
以前はredditとかで共有されてたデッキだけど,今はAnkiHubっていう中央組織が管理・同期してるんだ.月$5だけど,友達は年1ヶ月だけ登録してアップデートもらってるよ.カードはタグで停止解除するのが基本.例えばBoards & BeyondとかUWorldの動画や問題に対応したタグで解除するんだ.学校の講義とクロス参照したり,AI検索使う人もいるよ.カスタムタグもhttps://community.ankihub.net/t/protecting-fields-and-tags/1…で保護できる.
解決策がたくさんあって難しい問題だよね.Excelはデータを共有するのに怖いフォーマットだから,きっと限界があるよ.高度に構造化された情報を共有するのは難しい問題だけど,そういうコレクションを共有するのはさらに難しいね.
AnkiのSQLiteデータベースファイル”collection.anki2”の場所はOSによって違うんだって。詳しくはここのURL見てみて。https://docs.ankiweb.net/files.html?highlight=collection.ank…
LLMは使ってないけど、オープンな辞書データから漢字学習用のめっちゃ大量のカード作ってるんだ。それをAnkiじゃなくて、自作の漢字学習アプリ(Shodoku)で公開してるよ。DBは公開前にローカルに一時保存してるだけ。いつか公開プロセスをスムーズにしてGithub actionとか使いたいな。そういえば、アプリ開発自体にはLLM使ってなくて、結構簡単にできたよ。このShodokuのスクリプト見てみて。https://github.com/runarberg/shodoku/tree/main/scripts
デッキを”.apkg”ファイルでエクスポートすると、解凍してSQLiteファイルを取り出せるんだ。このURLに詳しい方法があるよ。https://www.encona.com/posts/custom-statistics-for-anki-flas…
うん、タグ使ってるよ。各質問の下にCSSでタグを表示してるんだ。やり方はAnkiのマニュアルに載ってるよ。編集:これ便利なんだよね。似たような質問でも章が違うと答えの焦点が変わるから(例えば三角法とか関数の微分を勉強してる時)、タグがあるとどの答えに注目すればいいか分かりやすいんだ。
これが一番の不満かも。最初は情報量が多すぎて理解するのが大変だし、初心者の間違いが多いんだよね。僕は最初から自分でやっちゃって、最初の6ヶ月はAnkiを”間違った”使い方してたと思う。変なカード作ったり、MC問題にしたり、FSRSを有効化・最適化しなかったり、レビューに上限設けたり、内容を理解する前にAnkiやったりとか。僕はゼロから自分で学ぶのが好きなんだけど、Ankiだけは例外だと思った方が良いよ。Youtubeチュートリアルとかガイドを見ないなんて絶対勧めない。Ankiは人に倣って、自分のワークフローに合わせて調整していくのがただただ良い数少ないものの一つだね。
自作フラッシュカードアプリ開発者だけど、AnkiのDBは正直イケてない部分もあるなーって思ったよ。でも、目的のために作られてて、テンプレートとかクローゼ削除の機能はすごく良いんだ。今自作アプリにもAnkiみたいに導入してるくらい。僕の新しいDB設計は属性ごとにテーブル分けてて、これは同期しやすくするためなんだ。AnkiのDBを見ると、同期が複雑だった理由が分かる気がするね。
出力例を出すと、教科書のビタミン(この例だとビタミンD)の章に基づいて生成されたものだよ。質問と答えのペアが並んでるね。例えば、”日光を使って体内で合成できる栄養素は?” -> ”ビタミンD”とか、”ビタミンDのカルシウム調節における主な役割は?” -> ”吸収を高め、骨貯蔵を動員し、腎臓での排泄を減らすことで血中カルシウムを上げる”とか。どんなカードかイメージついたかな。これがどれだけ役に立つかは主観だけど、これで用は足りるよ。
デッキをサブデッキに分割するのはタグでできるよ。それに各カードにはユニークなIDフィールドがあるんだ(通常はフロントだけど、作成者が別のものに定義することもできる)。もしタグだけを変更したとして、アップデートされたデッキをコレクションに再インポートする時、AnkiはIDを照合してくれるから、新しいカードや既存のカードに対してどういう挙動をするか定義できるんだよ。
もしFSRSを試してみたい人がいたら、Open Spaced RepetitionでPython、Typescript、Rustの公式パッケージを提供してるよ。PY: https://github.com/open-spaced-repetition/py-fsrs TS: https://github.com/open-spaced-repetition/ts-fsrs RS: https://github.com/open-spaced-repetition/fsrs-rs 今、ts-fsrsとrs-fsrsはFSRS 6に対応してるし、py-fsrsも近日中に対応する予定。それに、py-fsrsとfsrs-rsの両方で、過去のレビューからFSRSモデルを最適化できる機能も含まれてるんだ!