🚀 GPT - SW3モデル
GPT - SW3は、AI SwedenがRISEやWASP WARA for Media and Languageと共同開発した、5つの異なる言語と4つのプログラミング言語で文章生成が可能な自己回帰型の大規模言語モデルです。このモデルは、特定のテキストタスクに明示的に訓練されていなくても、それをテキスト生成タスクとして捉えることで実行できます。
🚀 クイックスタート
GPT - SW3は、5つの異なる言語と4つのプログラミング言語で首尾一貫したテキストを生成できる自己回帰型の大規模言語モデルです。また、明示的に訓練されていないテキストタスクを、テキスト生成タスクとして捉えることで実行することもできます。
このモデルは、スウェーデン語、ノルウェー語、デンマーク語、アイスランド語、英語、およびプログラミングコードを含む3200億トークンのデータセットで訓練されています。
✨ 主な機能
- 多言語対応:5つの異なる言語(デンマーク語、スウェーデン語、ノルウェー語、英語、アイスランド語)と4つのプログラミング言語でのテキスト生成が可能。
- 柔軟なタスク実行:明示的に訓練されていないテキストタスクを、テキスト生成タスクとして捉えることで実行できる。
📦 インストール
このリポジトリは非公開であるため、Pythonからモデルにアクセスするには、アクセストークンでログインする必要があります。これはhuggingface-cli login
で行うことができます。詳細については、HuggingFace Quick Start Guideを参照してください。
💻 使用例
基本的な使用法
import torch
from transformers import pipeline, AutoTokenizer, AutoModelForCausalLM
model_name = "AI-Sweden-Models/gpt-sw3-6.7b-v2-instruct"
device = "cuda:0" if torch.cuda.is_available() else "cpu"
prompt = "Träd är fina för att"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
model.eval()
model.to(device)
高度な使用法
input_ids = tokenizer(prompt, return_tensors="pt")["input_ids"].to(device)
generated_token_ids = model.generate(
inputs=input_ids,
max_new_tokens=100,
do_sample=True,
temperature=0.6,
top_p=1,
)[0]
generated_text = tokenizer.decode(generated_token_ids)
また、generate
メソッドの便利な代替手段として、HuggingFaceのパイプラインを使用することができます。これにより、大部分の作業を自動的に処理してくれます。
generator = pipeline('text-generation', tokenizer=tokenizer, model=model, device=device)
generated = generator(prompt, max_new_tokens=100, do_sample=True, temperature=0.6, top_p=1)[0]["generated_text"]
📚 ドキュメント
モデルの詳細
属性 |
详情 |
モデル開発者 |
AI SwedenがRISEやWASP WARA for Media and Languageと共同開発 |
モデルのリリース日 |
2022 - 12 - 20 |
モデルのバージョン |
GPT - SW3の第2世代 |
モデルの種類 |
大規模なデコーダ専用のトランスフォーマー言語モデル |
訓練アルゴリズム等の情報 |
NeMo Megatron GPT実装で訓練 |
ライセンス |
LICENSE |
モデルに関する質問やコメントの送信先 |
nlu@ai.se |
想定される使用方法
- 主な使用目的:北欧諸言語の大規模言語モデルの能力を研究および評価するために事前リリースされています。
- 主なユーザー:北欧のNLPエコシステムにおける組織や個人で、モデルの検証とテストに貢献し、コミュニティにフィードバックを提供できる者。
- 想定外の使用例:修正されたRAILライセンスを参照してください。
データ、制限事項、および推奨事項
- 訓練データの選択:GPT - SW3の訓練データは、幅広さと入手可能性を組み合わせて選択されました。詳細については、データシートを参照してください。
- 制限事項:他の大規模言語モデルと同様に、訓練データの多様性(またはその欠如)がモデルの品質に影響を与えます。GPT - SW3には、バイアスや安全性などの制限があり、生成の多様性や幻覚に関する品質問題もあります。
- 将来の作業に関する推奨事項:間接的なユーザーには、彼らが扱っているコンテンツがLLMによって作成されたものであることを知らせる必要があります。ユーザーは、リスクと制限事項を認識し、必要に応じて適切な年齢表示やブロッキングインターフェースを含めるべきです。
データセットの動機
- データセットの作成目的:GPT - 3などの大規模言語モデルの事前訓練には、大量のテキストデータが必要です。スウェーデン語のLLMを訓練するために、高品質な大規模スウェーデン語データセットが必要であり、このイニシアチブ以前にはそのようなデータセットが存在しなかったため、北欧諸言語と英語のデータを収集しました。
- データセットの作成者:AI SwedenのNLU研究グループが中心となって作成しました。このグループは、AI Sweden(Lindholmen Science Park AB)とRISEの研究者や開発者で構成されています。
- データセット作成の資金提供者:スウェーデンのInnovation Agency(Vinnova)が、2019 - 02996や2022 - 00949などの複数の助成金でこの作業を支援しています。
データセットの構成
データセットは、言語と文書タイプで分類されたテキスト文書で構成されています。これは、以下のソースを含むフィルタリングされ重複排除されたコレクションです。
- 書籍:Litteraturbanken、The Pile
- 記事:Diva、The Pile: PubMed、The Pile: ArXiv
- コード:Code Parrot: Github code
- 会話:Familjeliv、Flashback、Parlaiを通じて収集されたデータセット、Pushshift.io Redditデータセット
- 数学:DeepMindのコードで生成された英語の数学データセット、手動で翻訳されたテンプレートで生成されたスウェーデン語の数学データセット
- その他:要約データ、OPUS、映画脚本、Natural Instructions、P3、The Norwegian Colossal Corpus、Danish Gigaword、Icelandic Gigaword、The Pile: Stack Exchange
- Web Common Crawl:LESプロジェクトのWebデータ、Multilingual C4、Open Super - large Crawled Aggregated coRpus、The Pile: Open Web Text
- Webソース:様々なスウェーデンの公開ウェブサイトのスクレイピングデータ、Familjelivの記事、スウェーデンの公開求人広告、Wikipedia、公式Wikipediaダンプ
- 命令データ:dolly、Open Assistant、OIG、Fass(スウェーデンの医薬品情報をQ&A形式に変換したもの)
訓練データは、1.1TBのUTF - 8エンコードされたテキストで構成され、66000万の文書と合計3200億トークンを含んでいます。
🔧 技術詳細
GPT - SW3は、AI SwedenがRISEやWASP WARA for Media and Languageと共同開発した大規模なデコーダ専用のトランスフォーマー言語モデルです。このモデルは、NeMo Megatron GPT実装を使用して、因果言語モデリング(CLM)の目的で事前訓練されています。
instruct
モデルは、チャットと生テキスト形式の両方の命令データで微調整されています。
📄 ライセンス
GPT - SW3のリリースには、モデルの重み、構成ファイル、トークナイザーファイル、および語彙ファイルが含まれています。これらのファイルには、個人を特定できる情報(PII)や著作権保護された素材は含まれていません。
⚠️ 重要提示
他の大規模言語モデルと同様に、GPT - SW3にはバイアスや安全性などの制限があります。このモデルは、一部の視点を過剰に表現し、他の視点を過小に表現する可能性があり、ステレオタイプを含み、憎悪的、虐待的、暴力的、差別的または偏見的な言語を生成する可能性があります。また、誤った情報を事実のように生成したり、無関係または繰り返しの出力を生成したり、すべての設定に適さないコンテンツ(性的なコンテンツを含む)を生成する可能性があります。
💡 使用建议
間接的なユーザーには、彼らが扱っているコンテンツがLLMによって作成されたものであることを知らせる必要があります。ユーザーは、リスクと制限事項を認識し、必要に応じて適切な年齢表示やブロッキングインターフェースを含めるべきです。LLMで事前訓練されたモデルには、更新されたモデルカードを含めるべきです。モデルのユーザーは、影響を受けた者がフィードバックを提供できるメカニズム(コメント用のメールアドレスなど)を提供するべきです。