Views
No views yet
1# モデルによるタスクの推論。
2from tqdm import tqdm
3
4results = []
5for data in tqdm(datasets):
6
7 input = data["input"]
8
9 prompt = f"""### 指示
10 {input}
11 ### 回答
12 """
13
14 tokenized_input = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt").to(model.device)
15 attention_mask = torch.ones_like(tokenized_input)
16
17 with torch.no_grad():
18 outputs = model.generate(
19 tokenized_input,
20 attention_mask=attention_mask,
21 max_new_tokens=100,
22 do_sample=False,
23 repetition_penalty=1.2,
24 pad_token_id=tokenizer.eos_token_id
25 )[0]
26 output = tokenizer.decode(outputs[tokenized_input.size(1):], skip_special_tokens=True)
27
28 results.append({"task_id": data["task_id"], "input": input, "output": output})1from transformers import (
2 AutoModelForCausalLM,
3 AutoTokenizer,
4 BitsAndBytesConfig,
5 TrainingArguments,
6 logging,
7)
8from peft import (
9 LoraConfig,
10 PeftModel,
11 get_peft_model,
12)
13import os, torch, gc
14from datasets import load_dataset
15import bitsandbytes as bnb
16from trl import SFTTrainer
17HF_TOKEN = "your_hf_token_here"
18
19# モデルを読み込み。
20# llm-jp-3 1.8B, 3.7B, 13Bのsnapshotをダウンロード済みでmodelsディレクトリに格納してあります。
21# base_model_idの値はomnicampusの環境におけるモデルのパスを表しており、それ以外の環境で実行する場合は変更の必要があります。
22# その他のモデルは取得に承諾が必要なため、各自でダウンロードお願いします。
23base_model_id = "models/models--llm-jp--llm-jp-3-13b/snapshots/cd3823f4c1fcbb0ad2e2af46036ab1b0ca13192a" #Fine-Tuningするベースモデル
24# omnicampus以外の環境をご利用の方は以下をご利用ください。
25# base_model_id = "llm-jp/llm-jp-3-13b"
26new_model_id = "llm-jp-3-13b-finetune" #Fine-Tuningしたモデルにつけたい名前
27
28"""
29bnb_config: 量子化の設定
30
31 - load_in_4bit:
32 - 4bit量子化形式でモデルをロード
33
34 - bnb_4bit_quant_type:
35 - 量子化の形式を指定
36
37 - bnb_4bit_compute_dtype:
38 - 量子化された重みを用いて計算する際のデータ型
39
40"""
41
42bnb_config = BitsAndBytesConfig(
43 load_in_4bit=True,
44 bnb_4bit_quant_type="nf4", # nf4は通常のINT4より精度が高く、ニューラルネットワークの分布に最適です
45 bnb_4bit_compute_dtype=torch.bfloat16,
46)
47
48"""
49model: モデル
50
51 - base_model:
52 - 読み込むベースモデル (事前に定義したもの)
53
54 - quantization_config:
55 - bnb_configで設定した量子化設定
56
57 - device_map:
58 - モデルを割り当てるデバイス (CPU/GPU) "auto"で自動に割り当てられます。
59
60tokenizer: トークナイザー
61
62 - base_model:
63 - 読み込むベースモデル (事前に定義したもの)
64
65 - trust_remote_code:
66 - リモートコードの実行を許可 (カスタムモデルなど)
67"""
68model = AutoModelForCausalLM.from_pretrained(
69 base_model_id,
70 quantization_config=bnb_config,
71 device_map="auto"
72)
73
74tokenizer = AutoTokenizer.from_pretrained(base_model_id, trust_remote_code=True)
75
76"""
77find_all_linear_names: モデル内の4bit量子化線形層を探します。
78"""
79
80def find_all_linear_names(model):
81 cls = bnb.nn.Linear4bit # 4bit量子化線形層クラスを指定
82 lora_module_names = set() # ここに取得した線形層を保持します。
83
84 # モデル内の全てのモジュールを探索します
85 for name, module in model.named_modules():
86 if isinstance(module, cls): # モジュールが4bit量子化線形層の場合
87 names = name.split('.') # モジュールの名前を分割 (ネストされてる際などに対処)
88 lora_module_names.add(names[0] if len(names) == 1 else names[-1]) # 最下層の名前をlora_module_namesに追加
89
90 # 'lm_head' は16ビット演算の際に除外する必要があるため、lora_module_namesから削除
91 if 'lm_head' in lora_module_names:
92 lora_module_names.remove('lm_head')
93
94 return list(lora_module_names) # lora_module_namesをリストに変換して返します。
95
96modules = find_all_linear_names(model)
97
98"""
99peft_config: PEFTの構成設定
100
101 - r
102 - LoRA のランク (4, 8, 16 ,32...)
103 - 増やすほど学習が捗るが, 過学習のリスクも高まるので注意
104
105 - lora_alpha
106 - LoRAのスケーリング係数
107
108 - lora_dropout
109 - ドロップアウト率(過学習を防ぐための割合)
110
111 - bias
112 - バイアス項の扱い ("none"の場合、LoRAはバイアスを学習しない)
113
114 - task_type
115 - タスクタイプ
116
117 - target_modules
118 - LoRAを適用するターゲットモジュール (前のコードで特定した層)
119"""
120
121peft_config = LoraConfig(
122 r=16,
123 lora_alpha=32,
124 lora_dropout=0.05,
125 bias="none",
126 task_type="CAUSAL_LM",
127 target_modules=modules,
128)
129
130model = get_peft_model(model, peft_config)
131
132"""
133学習に用いるデータセットの指定
134今回はLLM-jp の公開している Ichikara Instruction を使います。データにアクセスするためには申請が必要ですので、使いたい方のみ申請をしてください。
135Ichikara Instruciton を Hugging Face Hub にて公開することはお控えください。
136また、CC-BY-NC-SAですのでモデルはライセンスを継承する前提でお使いください。
137
138下記のリンクから申請を終えた先に Google Drive があり、Distribution20241221_all というフォルダごとダウンロードしてください。
139今回は「ichikara-instruction-003-001-1.json」を使います。必要であれば展開(!unzip など)し、データセットのパスを適切に指定してください。
140omnicampusの開発環境では取得したデータを左側にドラッグアンドドロップしてお使いください。
141
142https://liat-aip.sakura.ne.jp/wp/llmのための日本語インストラクションデータ作成/llmのための日本語インストラクションデータ-公開/
143関根聡, 安藤まや, 後藤美知子, 鈴木久美, 河原大輔, 井之上直也, 乾健太郎. ichikara-instruction: LLMのための日本語インストラクションデータの構築. 言語処理学会第30回年次大会(2024)
144
145"""
146
147dataset = load_dataset("json", data_files="./ichikara-instruction-003-001-1.json")
148dataset
149
150# 学習時のプロンプトフォーマットの定義
151prompt = """### 指示
152{}
153### 回答
154{}"""
155
156
157"""
158formatting_prompts_func: 各データをプロンプトに合わせた形式に合わせる
159"""
160EOS_TOKEN = tokenizer.eos_token # トークナイザーのEOSトークン(文末トークン)
161def formatting_prompts_func(examples):
162 input = examples["text"] # 入力データ
163 output = examples["output"] # 出力データ
164 text = prompt.format(input, output) + EOS_TOKEN # プロンプトの作成
165 return { "formatted_text" : text, } # 新しいフィールド "formatted_text" を返す
166pass
167
168# # 各データにフォーマットを適用
169dataset = dataset.map(
170 formatting_prompts_func,
171 num_proc= 4, # 並列処理数を指定
172)
173
174"""
175training_arguments: 学習の設定
176
177 - output_dir:
178 -トレーニング後のモデルを保存するディレクトリ
179
180 - per_device_train_batch_size:
181 - デバイスごとのトレーニングバッチサイズ
182
183 - per_device_
184 _batch_size:
185 - デバイスごとの評価バッチサイズ
186
187 - gradient_accumulation_steps:
188 - 勾配を更新する前にステップを積み重ねる回数
189
190 - optim:
191 - オプティマイザの設定
192
193 - num_train_epochs:
194 - エポック数
195
196 - eval_strategy:
197 - 評価の戦略 ("no"/"steps"/"epoch")
198
199 - eval_steps:
200 - eval_strategyが"steps"のとき、評価を行うstep間隔
201
202 - logging_strategy:
203 - ログ記録の戦略
204
205 - logging_steps:
206 - ログを出力するステップ間隔
207
208 - warmup_steps:
209 - 学習率のウォームアップステップ数
210
211 - save_steps:
212 - モデルを保存するステップ間隔
213
214 - save_total_limit:
215 - 保存しておくcheckpointの数
216
217 - max_steps:
218 - トレーニングの最大ステップ数
219
220 - learning_rate:
221 - 学習率
222
223 - fp16:
224 - 16bit浮動小数点の使用設定(第8回演習を参考にすると良いです)
225
226 - bf16:
227 - BFloat16の使用設定
228
229 - group_by_length:
230 - 入力シーケンスの長さによりバッチをグループ化 (トレーニングの効率化)
231
232 - report_to:
233 - ログの送信先 ("wandb"/"tensorboard"など)
234"""
235
236training_arguments = TrainingArguments(
237 output_dir=new_model_id,
238 per_device_train_batch_size=1,
239 gradient_accumulation_steps=2,
240 optim="paged_adamw_32bit",
241 num_train_epochs=1,
242 logging_strategy="steps",
243 logging_steps=10,
244 warmup_steps=10,
245 save_steps=100,
246 save_total_limit = 2,
247 max_steps = -1,
248 learning_rate=5e-5,
249 fp16=False,
250 bf16=False,
251 seed = 3407,
252 group_by_length=True,
253 report_to="none"
254)
255
256"""
257SFTTrainer: Supervised Fine-Tuningに関する設定
258
259 - model:
260 - 読み込んだベースのモデル
261
262 - train_dataset:
263 - トレーニングに使用するデータセット
264
265 - eval_dataset:
266 - 評価に使用するデータセット
267
268 - peft_config:
269 - PEFT(Parameter-Efficient Fine-Tuning)の設定(LoRAを利用する場合に指定)
270
271 - max_seq_length:
272 - モデルに入力されるシーケンスの最大トークン長
273
274 - dataset_text_field:
275 - データセット内の学習に使うテキストを含むフィールド名
276
277 - tokenizer:
278 - モデルに対応するトークナイザー
279
280 - args:
281 - トレーニングに使用するハイパーパラメータ(TrainingArgumentsの設定を指定)
282
283 - packing:
284 - 入力シーケンスのパッキングを行うかどうかの設定 (False に設定することで、各入力を独立して扱う)
285"""
286trainer = SFTTrainer(
287 model=model,
288 train_dataset=dataset["train"],
289 peft_config=peft_config,
290 max_seq_length= 512,
291 dataset_text_field="formatted_text",
292 tokenizer=tokenizer,
293 args=training_arguments,
294 packing= False,
295)
296
297model.config.use_cache = False # キャッシュ機能を無効化
298trainer.train() # トレーニングを実行
299
300# タスクとなるデータの読み込み。
301# omnicampusの開発環境では、左にタスクのjsonlをドラッグアンドドロップしてから実行。
302import json
303datasets = []
304with open("./elyza-tasks-100-TV_0.jsonl", "r") as f:
305 item = ""
306 for line in f:
307 line = line.strip()
308 item += line
309 if item.endswith("}"):
310 datasets.append(json.loads(item))
311 item = ""
312
313# モデルによるタスクの推論。
314from tqdm import tqdm
315
316results = []
317for data in tqdm(datasets):
318
319 input = data["input"]
320
321 prompt = f"""### 指示
322 {input}
323 ### 回答
324 """
325
326 tokenized_input = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt").to(model.device)
327 attention_mask = torch.ones_like(tokenized_input)
328
329 with torch.no_grad():
330 outputs = model.generate(
331 tokenized_input,
332 attention_mask=attention_mask,
333 max_new_tokens=100,
334 do_sample=False,
335 repetition_penalty=1.2,
336 pad_token_id=tokenizer.eos_token_id
337 )[0]
338 output = tokenizer.decode(outputs[tokenized_input.size(1):], skip_special_tokens=True)
339
340 results.append({"task_id": data["task_id"], "input": input, "output": output})
341
342# こちらで生成されたjsolを提出してください。
343# 本コードではinputとeval_aspectも含んでいますが、なくても問題ありません。
344# 必須なのはtask_idとoutputとなります。
345import re
346jsonl_id = re.sub(".*/", "", new_model_id)
347with open(f"./{jsonl_id}-outputs.jsonl", 'w', encoding='utf-8') as f:
348 for result in results:
349 json.dump(result, f, ensure_ascii=False) # ensure_ascii=False for handling non-ASCII characters
350 f.write('\n')
351
352# モデルとトークナイザーをHugging Faceにアップロード
353model.push_to_hub(new_model_id, token=HF_TOKEN, private=True) # Online saving
354tokenizer.push_to_hub(new_model_id, token=HF_TOKEN, private=True) # Online saving1absl-py==1.4.0
2accelerate==1.2.1
3aiohappyeyeballs==2.4.3
4aiohttp==3.11.7
5aiosignal @ file:///rapids/aiosignal-1.3.1-py3-none-any.whl#sha256=f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17
6annotated-types==0.7.0
7antlr4-python3-runtime==4.9.3
8anyio==4.6.2.post1
9apex @ file:///opt/pytorch/apex
10argon2-cffi==21.3.0
11argon2-cffi-bindings==21.2.0
12asttokens==2.2.1
13astunparse==1.6.3
14async-timeout @ file:///rapids/async_timeout-4.0.2-py3-none-any.whl#sha256=8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c
15attrs==24.2.0
16audioread==3.0.0
17backcall==0.2.0
18beautifulsoup4==4.12.3
19bitsandbytes==0.45.0
20bleach==6.0.0
21blis==0.7.9
22cachetools==5.3.1
23catalogue==2.0.8
24certifi==2023.5.7
25cffi==1.15.1
26charset-normalizer==3.1.0
27click==8.1.7
28cloudpickle @ file:///rapids/cloudpickle-2.2.1-py3-none-any.whl#sha256=61f594d1f4c295fa5cd9014ceb3a1fc4a70b0de1164b94fbc2d854ccba056f9f
29cmake==3.26.4
30comm==0.1.3
31confection==0.1.0
32contourpy==1.1.0
33cubinlinker @ file:///rapids/cubinlinker-0.3.0%2B2.g155b525-cp310-cp310-linux_x86_64.whl#sha256=3abbc1f451c3aad9998ddd733c58bdd09fe0904046411ea7cd88027eaaf76f59
34cuda-python @ file:///rapids/cuda_python-12.1.0rc5%2B1.g8659927-cp310-cp310-linux_x86_64.whl#sha256=d9e5482d4774cc8c71b9e92b99dda8c43f764356d23777abe3f20282f36f5677
35cudf @ file:///rapids/cudf-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=3cb3c9595ceffba72a2875cba7b80a6a50cf8c32fcc5852900bec0c4fcc83ec1
36cugraph @ file:///rapids/cugraph-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=31cb17bc01f601ed755494f7444696ee433acc140039ab8623e44f3450c3932d
37cugraph-dgl @ file:///rapids/cugraph_dgl-23.6.0-py3-none-any.whl#sha256=eec7130c644e26c9c7c97ad347feac99222e3437cb53b969a7dc7bf5793e4a25
38cugraph-service-client @ file:///rapids/cugraph_service_client-23.6.0-py3-none-any.whl#sha256=e9e4d156f2f6d29ebfbe0f4c491649a62649780e48cf7cb8abb8ff645605e310
39cugraph-service-server @ file:///rapids/cugraph_service_server-23.6.0-py3-none-any.whl#sha256=3c07645c43da908ee466c185ba450636d2e4a74267c79258147552f5bd6a5d6f
40cuml @ file:///rapids/cuml-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=f51ef18b11c430f945cca89c771904c65ec86b3cb9a46dd745ef99953212a2aa
41cupy-cuda12x @ file:///rapids/cupy_cuda12x-12.1.0-cp310-cp310-linux_x86_64.whl#sha256=42bb39c9e6586e09ad8f00a9ac20543573b571ee90c955e7c10817b4cecebd89
42cut-cross-entropy==24.11.4
43cycler==0.11.0
44cymem==2.0.7
45Cython==0.29.36
46dask @ file:///rapids/dask-2023.3.2-py3-none-any.whl#sha256=5e64763d62feb18afd3ad66f364e0b4f456f7ac92e894fcc87950af75029ecdf
47dask-cuda @ file:///rapids/dask_cuda-23.6.0-py3-none-any.whl#sha256=a7e8287f5256f7b19fd6ff613a29de820ba5e4929b8c40e417004fe66d4c7e07
48dask-cudf @ file:///rapids/dask_cudf-23.6.0-py3-none-any.whl#sha256=f9b8190b2b0c92c19e76bcf0f2cb98993029c0e90387e09e8d72ae0163585c2f
49dataclasses-json==0.6.7
50datasets==3.2.0
51debugpy==1.6.7
52decorator==5.1.1
53deepspeed==0.15.4
54defusedxml==0.7.1
55Deprecated==1.2.15
56dill==0.3.8
57dirtyjson==1.0.8
58distributed @ file:///rapids/distributed-2023.3.2.1-py3-none-any.whl#sha256=a7756a4b952ec5a7fd3163e93aef99aaf8b0000568fa9ee7c000113a470d7f8e
59distro==1.9.0
60dm-tree==0.1.8
61docker-pycreds==0.4.0
62docstring_parser==0.16
63einops==0.6.1
64exceptiongroup==1.1.2
65execnet==1.9.0
66executing==1.2.0
67expecttest==0.1.3
68fastjsonschema==2.17.1
69fastrlock @ file:///rapids/fastrlock-0.8.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_24_x86_64.whl#sha256=d6c53abeae3f9a55b5c65824cec9df59159fa50e8fa800a5c6e8de42b2219c28
70filelock==3.12.2
71filetype==1.2.0
72fire==0.7.0
73flash-attn==1.0.7
74fonttools==4.40.0
75frozenlist @ file:///rapids/frozenlist-1.3.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=783263a4eaad7c49983fe4b2e7b53fa9770c136c270d2d4bbb6d2192bf4d9caf
76fsspec==2023.6.0
77gast==0.5.4
78gitdb==4.0.11
79GitPython==3.1.43
80google-auth==2.21.0
81google-auth-oauthlib==0.4.6
82graphsurgeon @ file:///workspace/TensorRT-8.6.1.6/graphsurgeon/graphsurgeon-0.4.6-py2.py3-none-any.whl#sha256=0fbadaefbbe6e9920b9f814ae961c4a279be602812edf3ed7fb9cc6f8f4809fe
83greenlet==3.1.1
84grpcio==1.56.0
85h11==0.14.0
86h5py==3.11.0
87hdf5plugin==4.4.0
88hf_transfer==0.1.8
89hjson==3.1.0
90httpcore==1.0.7
91httpx==0.27.2
92huggingface-hub==0.26.2
93hydra-core==1.3.2
94hypothesis==5.35.1
95idna==3.4
96imageio==2.34.1
97importlib-metadata @ file:///rapids/importlib_metadata-6.7.0-py3-none-any.whl#sha256=cb52082e659e97afc5dac71e79de97d8681de3aa07ff18578330904a9d18e5b5
98iniconfig==2.0.0
99intel-openmp==2021.4.0
100ipykernel==6.24.0
101ipython==8.14.0
102ipython-genutils==0.2.0
103ipywidgets==8.1.5
104jedi==0.18.2
105Jinja2==3.1.2
106jiter==0.7.1
107joblib @ file:///rapids/joblib-1.3.0-py3-none-any.whl#sha256=172d56d4c43dd6bcd953bea213018c4084cf754963bbf54b8dae40faea716b98
108json5==0.9.14
109jsonpatch==1.33
110jsonpointer==3.0.0
111jsonschema==4.18.0
112jsonschema-specifications==2023.6.1
113jupyter-tensorboard @ git+https://github.com/cliffwoolley/jupyter_tensorboard.git@ffa7e26138b82549453306e06b535a9ac36db17a
114jupyter_client==8.3.0
115jupyter_core==5.3.1
116jupyterlab==2.2.9
117jupyterlab-pygments==0.2.2
118jupyterlab-server==1.2.0
119jupyterlab_widgets==3.0.13
120jupytext==1.14.7
121kiwisolver==1.4.4
122langchain==0.3.8
123langchain-core==0.3.21
124langchain-text-splitters==0.3.2
125langcodes==3.3.0
126langsmith==0.1.145
127lazy_loader==0.4
128librosa==0.9.2
129lightning-utilities==0.11.9
130llama-cloud==0.1.5
131llama-index==0.12.1
132llama-index-agent-openai==0.4.0
133llama-index-cli==0.4.0
134llama-index-core==0.12.1
135llama-index-embeddings-openai==0.3.0
136llama-index-indices-managed-llama-cloud==0.6.2
137llama-index-legacy==0.9.48.post4
138llama-index-llms-openai==0.3.1
139llama-index-multi-modal-llms-openai==0.3.0
140llama-index-program-openai==0.3.0
141llama-index-question-gen-openai==0.3.0
142llama-index-readers-file==0.4.0
143llama-index-readers-llama-parse==0.4.0
144llama-parse==0.5.15
145llvmlite==0.40.1
146locket @ file:///rapids/locket-1.0.0-py2.py3-none-any.whl#sha256=b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3
147Markdown==3.4.3
148markdown-it-py==3.0.0
149MarkupSafe==2.1.3
150marshmallow==3.23.1
151matplotlib==3.7.2
152matplotlib-inline==0.1.6
153mdit-py-plugins==0.4.0
154mdurl==0.1.2
155mistune==3.0.1
156mkl==2021.1.1
157mkl-devel==2021.1.1
158mkl-include==2021.1.1
159mne==1.6.0
160mock==5.0.2
161mpmath==1.3.0
162msgpack @ file:///rapids/msgpack-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=e42b9594cc3bf4d838d67d6ed62b9e59e201862a25e9a157019e171fbe672dd3
163multidict @ file:///rapids/multidict-6.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=36c63aaa167f6c6b04ef2c85704e93af16c11d20de1d133e39de6a0e84582a93
164multiprocess==0.70.16
165murmurhash==1.0.9
166mypy-extensions==1.0.0
167nbclient==0.8.0
168nbconvert==7.6.0
169nbformat==5.9.0
170nest-asyncio==1.6.0
171networkx==3.4.2
172ninja==1.11.1
173nltk==3.9.1
174notebook==6.4.10
175numba @ file:///rapids/numba-0.57.1%2B1.gf851d279c-cp310-cp310-linux_x86_64.whl#sha256=374c5eaf2ad68c83368c427ae516cd6060a428810a0a4ee3b0d721dad820d44a
176numpy==1.26.4
177nvidia-cublas-cu12==12.4.5.8
178nvidia-cuda-cupti-cu12==12.4.127
179nvidia-cuda-nvrtc-cu12==12.4.127
180nvidia-cuda-runtime-cu12==12.4.127
181nvidia-cudnn-cu12==9.1.0.70
182nvidia-cufft-cu12==11.2.1.3
183nvidia-curand-cu12==10.3.5.147
184nvidia-cusolver-cu12==11.6.1.9
185nvidia-cusparse-cu12==12.3.1.170
186nvidia-dali-cuda120==1.27.0
187nvidia-nccl-cu12==2.21.5
188nvidia-nvjitlink-cu12==12.4.127
189nvidia-nvtx-cu12==12.4.127
190nvidia-pyindex==1.0.9
191nvtx @ file:///rapids/nvtx-0.2.5-cp310-cp310-linux_x86_64.whl#sha256=b6531c8a79e9f7ac0dd0e6f165c31cab2a71c424777dbd75b564b8c8d19865b0
192oauthlib==3.2.2
193omegaconf==2.3.0
194onnx @ file:///opt/pytorch/pytorch/third_party/onnx
195openai==1.55.0
196opencv @ file:///opencv-4.7.0/modules/python/package
197orjson==3.10.12
198outcome==1.3.0.post0
199packaging==24.2
200pandas @ file:///rapids/pandas-1.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=d0d8fd58df5d17ddb8c72a5075d87cd80d71b542571b5f78178fb067fa4e9c72
201pandocfilters==1.5.0
202parso==0.8.3
203partd @ file:///rapids/partd-1.4.0-py3-none-any.whl#sha256=7a63529348cf0dff14b986db641cd1b83c16b5cb9fc647c2851779db03282ef8
204pathy==0.10.2
205peft==0.14.0
206pexpect==4.8.0
207pickleshare==0.7.5
208Pillow @ file:///tmp/pillow-simd
209platformdirs==3.8.0
210pluggy==1.2.0
211ply @ file:///rapids/ply-3.11-py2.py3-none-any.whl#sha256=096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce
212polygraphy==0.47.1
213pooch==1.7.0
214preshed==3.0.8
215prettytable==3.8.0
216prometheus-client==0.17.0
217prompt-toolkit==3.0.39
218propcache==0.2.0
219protobuf==3.20.3
220psutil @ file:///rapids/psutil-5.9.4-cp310-abi3-linux_x86_64.whl#sha256=6ec529af5a6aae129ab7338766af46c19452c9b853ff6e95da9ab3927a6df1ca
221ptxcompiler @ file:///rapids/ptxcompiler-0.8.1%2B1.gb323413-cp310-cp310-linux_x86_64.whl#sha256=abf237b2ed1ca160175ffa8a79dbcfc3fb71dc2468bdcf0ea4ace13a1e44c90e
222ptyprocess==0.7.0
223pure-eval==0.2.2
224py-cpuinfo==9.0.0
225pyarrow==18.0.0
226pyasn1==0.5.0
227pyasn1-modules==0.3.0
228pybind11==2.10.4
229pycocotools @ git+https://github.com/nvidia/cocoapi.git@fa44301f7a8b3f95a9f2751d19bfd735b0f6c65d#subdirectory=PythonAPI
230pycparser==2.21
231pydantic==2.9.2
232pydantic_core==2.23.4
233Pygments==2.15.1
234pylibcugraph @ file:///rapids/pylibcugraph-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=372d933675f597d329f75841c73c1c31786aec6a50921db3478eb23973e9331f
235pylibcugraphops @ file:///rapids/pylibcugraphops-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=ae9101d2dfc23a9f1a45cc0cd61e44250ca83237d3f85b8fe44061d59b70c0ce
236pylibraft @ file:///rapids/pylibraft-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=35d5d69fff0944bb9da0501a2bb8372b196f1a19fe98af56d9871e4bdd420a7e
237pynvml @ file:///rapids/pynvml-11.4.1-py3-none-any.whl#sha256=d27be542cd9d06558de18e2deffc8022ccd7355bc7382255d477038e7e424c6c
238pyparsing==3.0.9
239pypdf==5.1.0
240PySocks==1.7.1
241pytest==7.4.0
242pytest-flakefinder==1.1.0
243pytest-rerunfailures==12.0
244pytest-shard==0.1.2
245pytest-xdist==3.3.1
246python-dateutil==2.8.2
247python-hostlist==1.23.0
248pytorch-quantization==2.1.2
249pytz @ file:///rapids/pytz-2023.3-py2.py3-none-any.whl#sha256=a151b3abb88eda1d4e34a9814df37de2a80e301e68ba0fd856fb9b46bfbbbffb
250PyYAML==6.0.2
251pyzmq==25.1.0
252raft-dask @ file:///rapids/raft_dask-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=936720dd29c15967a7899efcd840028fcfecf682ee4d6159c1f6512875411f84
253referencing==0.29.1
254regex==2023.6.3
255requests==2.32.3
256requests-oauthlib==1.3.1
257requests-toolbelt==1.0.0
258resampy==0.4.2
259rich==13.9.4
260rmm @ file:///rapids/rmm-23.6.0-cp310-cp310-linux_x86_64.whl#sha256=573b108a4f7185a23e7e4f834bef6b95c324847b3963cd69733e372a085abec2
261rpds-py==0.8.8
262rsa==4.9
263safetensors==0.4.5
264scikit-learn @ file:///rapids/scikit_learn-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=184a42842a4e698ffa4d849b6019de50a77a0aa24d26afa28fa49c9190bb144b
265scipy @ file:///rapids/scipy-1.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=a53f9cebcfda6158c241c35a559407a4ef6b8cb0863eb4144958fe0a0b7c3dae
266selenium==4.26.1
267Send2Trash==1.8.2
268sentence-transformers==3.3.1
269sentencepiece==0.2.0
270sentry-sdk==2.19.0
271setproctitle==1.3.4
272shtab==1.7.1
273six==1.16.0
274smart-open==6.3.0
275smmap==5.0.1
276sniffio==1.3.1
277sortedcontainers==2.4.0
278soundfile==0.12.1
279soupsieve==2.4.1
280spacy==3.5.4
281spacy-legacy==3.0.12
282spacy-loggers==1.0.4
283sphinx-glpi-theme==0.3
284SQLAlchemy==2.0.36
285srsly==2.4.6
286stack-data==0.6.2
287striprtf==0.0.26
288sympy==1.13.1
289tabulate==0.9.0
290tbb==2021.9.0
291tblib @ file:///rapids/tblib-2.0.0-py3-none-any.whl#sha256=9100bfa016b047d5b980d66e7efed952fbd20bd85b56110aaf473cb97d18709a
292tenacity==8.5.0
293tensorboard==2.9.0
294tensorboard-data-server==0.6.1
295tensorboard-plugin-wit==1.8.1
296tensorrt @ file:///workspace/TensorRT-8.6.1.6/python/tensorrt-8.6.1-cp310-none-linux_x86_64.whl#sha256=2684b4772cb16088184266728a0668f5dac14e66f088c4ccff2096ccb222d74c
297termcolor==2.5.0
298terminado==0.17.1
299thinc==8.1.10
300threadpoolctl==3.1.0
301thriftpy2 @ file:///rapids/thriftpy2-0.4.16-cp310-cp310-linux_x86_64.whl#sha256=5608fa32e4bd4f82f8f1d02c6e37329a38e9d14de994342c897a153917818d74
302tiktoken==0.8.0
303tinycss2==1.2.1
304tokenizers==0.21.0
305toml==0.10.2
306tomli==2.0.1
307toolz @ file:///rapids/toolz-0.12.0-py3-none-any.whl#sha256=2059bd4148deb1884bb0eb770a3cde70e7f954cfbbdc2285f1f2de01fd21eb6f
308torch==2.5.1
309torch-tensorrt @ file:///opt/pytorch/torch_tensorrt/py/dist/torch_tensorrt-1.5.0.dev0-cp310-cp310-linux_x86_64.whl#sha256=c98edecc0b3611f44778568b324cd408424763ed36d45f16259b5a9b3a379edb
310torchaudio==2.5.1
311torchdata @ file:///opt/pytorch/data
312torchmetrics==1.6.0
313torchtext @ file:///opt/pytorch/text
314torchvision==0.20.1
315tornado==6.3.2
316tqdm==4.67.1
317traitlets==5.9.0
318transformer-engine @ git+https://github.com/NVIDIA/TransformerEngine.git@96ed6fc69d99a9cff49637dbc58c837c8d921ad7
319transformers==4.47.0
320treelite @ file:///rapids/treelite-3.2.0-cp310-cp310-linux_x86_64.whl#sha256=73db6e9525410c4907b2580336ef674cbc3c13dbc78b5f5263357cb5b232755d
321treelite-runtime @ file:///rapids/treelite_runtime-3.2.0-cp310-cp310-linux_x86_64.whl#sha256=60f470fedd8be62fc7ad932c88dbe1b813e328e35e29d534d524848ab9f76b79
322trio==0.27.0
323trio-websocket==0.11.1
324triton==3.1.0
325trl==0.13.0
326typeguard==4.4.1
327typer==0.9.0
328types-dataclasses==0.6.6
329typing-inspect==0.9.0
330typing_extensions==4.12.2
331tyro==0.9.2
332ucx-py @ file:///rapids/ucx_py-0.32.0-cp310-cp310-linux_x86_64.whl#sha256=11be2cf8130e60f68625832a7e34c8c867095fcd9c1ed234752b70aab3bfc0ce
333uff @ file:///workspace/TensorRT-8.6.1.6/uff/uff-0.6.9-py2.py3-none-any.whl#sha256=618a3f812d491f0d3c4f2e38b99e03217ca37b206db14cee079f2bf681eb4fe3
334unsloth==2024.11.9
335unsloth_zoo==2024.11.7
336urllib3==1.26.16
337wandb==0.19.1
338wasabi==1.1.2
339wcwidth==0.2.6
340webencodings==0.5.1
341websocket-client==1.8.0
342Werkzeug==2.3.6
343widgetsnbextension==4.0.13
344wrapt==1.17.0
345wsproto==1.2.0
346xdoctest==1.0.2
347xformers==0.0.28.post3
348xgboost @ file:///rapids/xgboost-1.7.5-cp310-cp310-linux_x86_64.whl#sha256=b8362affc7921f01cb3ca50c4f56bd8d888ff4c2b94a3c2fd5f3b2e09fe62e8c
349xxhash==3.5.0
350yarl==1.18.0
351zict @ file:///rapids/zict-3.0.0-py2.py3-none-any.whl#sha256=5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae
352zipp @ file:///rapids/zipp-3.15.0-py3-none-any.whl#sha256=48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556
353