
デモ
投稿や記事に、トピックとタグを。
「How to film a two-person podcast with two iPhones」という投稿は、テクノロジーとクリエイターエコノミーにタグ付けされます。「Cómo invertir en fondos indexados」は金融にタグ付けされます。同じ 36 のトピックが 101 言語すべてに適用されるので、2 つ目の市場へ展開しても、追加の設定は要りません。
正しいトピックが上位 3 件に入るのは 91% で、ほとんどの項目は 2〜3 個のトピックに該当します。これは、フィードが分類 API なしで並べ替え、絞り込み、振り分けを行うのに十分です。処理は単語に対する 2 回の安価なパスで済むため、ブラウザのタブは言語モデルを立ち上げることなく投稿にタグを付けます。
スコアはコレクション全体で足し合わせられるので、ポッドキャストのフィードやチャンネルそのものにもトピックが付きます。英語専用のビルドなら、モデルは 15MB まで小さくなります。
36 トピック、101 言語、74MB。
74MB のモデル、または英語専用の 15MB による、101 言語にわたる 36 トピック。
人手でラベル付けした 572 件の実投稿での再現率。社内計測。
ユースケース
投稿や記事に、トピックとタグを。.
サーバーに問い合わせずに投稿を振り分ける
投稿、記事、動画を端末上でトピック別にタグ付けします。フィードは分類 API を経由せずに、並べ替え、絞り込み、ルーティングができます。
投稿からチャンネルを説明する
あるアカウントの投稿を足し合わせて、チャンネル単位のトピックにまとめます。すると、ディレクトリやレコメンダーは、誰も説明文を書かなくても、ポッドキャストやニュースレター、フィードが何についてかを示せます。
ランカーのための、項目ごとのトピック
レコメンドのフィードやモデレーションのキューが、どの項目についても安価でプライベートなトピックのシグナルを受け取れます。フィードが大きくなっても、呼び出しごとの費用はかかりません。
オンデバイスでの整理
ユーザー自身のメモ、ブックマーク、ライブラリを、デバイス上でトピック別にまとめます。個人のアーカイブが、1 件もデバイスの外に出ないまま探せるようになります。
インスピレーション
Gist で作るためのアイデア。プロンプトをコーディングエージェントにコピーして始めましょう。
Auto-tag articles and posts with their topics for a feed.
Route content to channels by topic, no server call.
Organize a reading list by topic, locally.
Give a recommender a topic-per-item signal that runs on the phone.
Tag a post and suggest an emoji for it.
Auto-file support tickets into the right queue by topic.
Build an OpenClaw skill that tags and language-routes text.
An Obsidian plugin that tags notes with their topics, on the device.
モデルができること
- テクノロジーや金融からクリエイターエコノミーまで 36 トピック。ほとんどのアイテムは 2〜3 個に該当します。
- 1 つのモデルで 101 言語。言語の設定を渡す必要はありません。
- Transformer を使わない 2 ストリーム分類器。スコアリングにかかるのは CPU 時間だけです。
- 英語専用アプリ向けのコンパクトな英語専用バリアント(15MB)。Swift SDK では現在
Gist(variant: .english)で選べます。
はじめに
コンテンツのトピックタグ付け を、数行のコードで iOS or macOS, Android or web アプリに追加。 Gist のドキュメント.
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.5.0")
// target dependency
.product(name: "Gist", package: "desert-ant-core")
import Gist
let gist = Gist()
let topics = try await gist.classify("How to start a podcast with just your iPhone")
// [Topic(slug: "technology", ...), ...]
Add Gist from Desert Ant Labs to this Swift project (iOS, macOS). What it does: Gist:オンデバイスのコンテンツトピックタグ付け. SDK: Swift (iOS, macOS) Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme // Swift Package Manager .package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.5.0") // target dependency .product(name: "Gist", package: "desert-ant-core") Reference: - Model page: https://desertant.com/models/gist/ - Full catalog and other models: https://desertant.com/llms.txt Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
// build.gradle.kts (Maven Central)
implementation("ai.desertant:gist:3.5.0")
import ai.desertant.gist.Gist
Gist(context).use { gist ->
val topics = gist.classify("How to start a podcast with just your iPhone")
// List<Topic>: slug, name, score
}
Add Gist from Desert Ant Labs to this Kotlin project (Android).
What it does: Gist:オンデバイスのコンテンツトピックタグ付け.
SDK:
Kotlin (Android)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
// build.gradle.kts (Maven Central)
implementation("ai.desertant:gist:3.5.0")
Reference:
- Model page: https://desertant.com/models/gist/
- Full catalog and other models: https://desertant.com/llms.txt
Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
npm i @desert-ant-labs/gist @litertjs/core
import { Gist } from "@desert-ant-labs/gist";
const gist = await Gist.load();
const topics = await gist.classify("How to start a podcast with just your iPhone");
// [{ slug: "technology", name: "Technology & Software", score: 0.91 }, ...]
Add Gist from Desert Ant Labs to this JavaScript / TypeScript project (Web, Node.js). What it does: Gist:オンデバイスのコンテンツトピックタグ付け. SDK: JavaScript / TypeScript (Web, Node.js) Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme npm i @desert-ant-labs/gist @litertjs/core Reference: - Model page: https://desertant.com/models/gist/ - Full catalog and other models: https://desertant.com/llms.txt Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
仕様
- 言語
- 101
- トピック
- 36、マルチラベル
- オンデバイスサイズ
- 多言語版 74MB、または英語専用版 15MB
- モデル
- 2 ストリーム分類器:多言語の静的埋め込みとハッシュ化した n-gram
Gist はテキストが何についてかをタグ付けするもので、その良し悪しや安全性を判断するものではありません。36 のトピックは固定された一覧なので、一覧にない主題は、そのなかで最も近いトピックに割り当てられます。
FAQ
Gist とは?
オンデバイスのトピック分類。タイトルや投稿を読んでトピックを返します。101 言語対応、サーバー呼び出しなし。
Gist はオンデバイスで動作しますか?
はい。Gist はデバイス上で動作し、サーバーへの通信は発生しません。データはユーザーの手元に残ります。
Gist はどのプラットフォームに対応していますか?
Gist は Swift, Kotlin, JavaScript / TypeScript 向けのネイティブなオンデバイス SDK として提供されます。
Gist の料金はいくらですか?
各モデルは月間アクティブデバイス 100k 台まで無料です。推論は無制限です。 カスタムライセンスについては、お問い合わせください。
Gist の精度や速度はどれくらいですか?
74MB のモデル、または英語専用の 15MB による、101 言語にわたる 36 トピック。