মূল content-এ যান
Training guide-এর অধ্যায় সব নথিপত্র

Training CLI: কমান্ড ও বিকল্প

প্রকল্প সেটআপ থেকে পুনরুদ্ধার, মূল্যায়ন, export ও exit code পর্যন্ত কমান্ড-লাইন নির্দেশনা।

সব ভাষাতেই command ও code ইংরেজিতে থাকবে। বড় হাতের অক্ষরে লেখা placeholder নিজের account ও paid job-এর মান দিয়ে বদলান; shared notebook বা log-এ আসল key দেবেন না।

Command-line workflow

প্রতিটি command-এর নির্দিষ্ট পার্শ্বপ্রতিক্রিয়া ও অর্থবহ ফল আছে।
  1. init / doctor Project তৈরি ও পরীক্ষা
  2. plan Training ছাড়াই পর্যালোচনা
  3. run Budget মেনে training
  4. evaluate Held-out মানদণ্ড যাচাই
  5. export যাচাই ও প্যাকেজ

init / doctor: Project তৈরি ও পরীক্ষা. plan: Training ছাড়াই পর্যালোচনা. run: Budget মেনে training. evaluate: Held-out মানদণ্ড যাচাই. export: যাচাই ও প্যাকেজ

স্পষ্ট কমান্ড-ধারা অনুসরণ করুন

fpai-training executable Python interface-এর একই প্রকল্প চুক্তি ব্যবহার করে: initialize, compatibility পরীক্ষা, dry-run plan পর্যালোচনা, execute, evaluate ও export। Status বা plan পড়া প্রশিক্ষণ সফল হওয়ার প্রমাণ নয়।

  • FUSIONPOINTAI_API_KEY থেকে authentication নেওয়া হয়। API key দেওয়ার command-line flag নেই।
  • Executable বা command-এ --help ব্যবহার করুন। --version ইনস্টল করা package-এর সংস্করণ জানায়।
  • পর্যালোচিত plan-এ নির্ধারিত সেটিংস স্থির থাকে। নথিভুক্ত নয় এমন CLI hyperparameter override সমর্থিত নয়।
সম্পূর্ণ CLI কমান্ড রেফারেন্স
ঘর বা ইন্টারফেসধরন বা ফলডিফল্ট বা exit codeআচরণ ও যাচাই
init --directory PATH command আবশ্যক / ডিফল্ট নেই নতুন project skeleton ও উদাহরণ configuration তৈরি করে; আগে থেকে থাকা nonempty directory প্রত্যাখ্যান করে। Training বা paid call হয় না।
doctor --config PATH command আবশ্যক / ডিফল্ট নেই Schema, স্থানীয় model file, dependency, storage, device ও adapter compatibility যাচাই করে। ওজন হালনাগাদ বা teacher generation হয় না।
plan --config PATH --dry-run command আবশ্যক / ডিফল্ট নেই Default নির্ধারণ করে fingerprint pin করে এবং topic, sharing, budget ও output দেখায়। Optimization বা paid teacher কাজ হয় না।
run --config PATH command আবশ্যক / ডিফল্ট নেই পর্যালোচিত বৈধ plan ও সক্রিয় entitlement আবশ্যক; একটি run lock করে বাজেটের মধ্যে প্রকৃত training চালায়।
status --run PATH command আবশ্যক / ডিফল্ট নেই গোপন তথ্য বাদ দেওয়া স্থানীয় run snapshot পড়ে। Worker আবার চালু বা teacher request তৈরি করে না।
pause --run PATH command আবশ্যক / ডিফল্ট নেই নিরাপদ pause চেয়ে সম্পূর্ণ atomic checkpoint-এর অপেক্ষা করে। শুধু সক্রিয় মালিকানাধীন run-এ বৈধ।
resume --run PATH command আবশ্যক / ডিফল্ট নেই কঠোর checkpoint ও plan যাচাইয়ের পর শুধু paused/interrupted পুনরুদ্ধারযোগ্য run চালায়।
cancel --run PATH command আবশ্যক / ডিফল্ট নেই নিজের worker থামায়, নিজের resource ছাড়ে এবং cancellation নথিবদ্ধ করে; বৈধ output ও diagnostic রেখে দেয়।
evaluate --run PATH --split test command আবশ্যক / ডিফল্ট নেই Validation বা test data-র বিপরীতে pinned model মূল্যায়ন করে। Optimization বা hidden-data sharing হয় না।
export --run PATH --format safetensors command আবশ্যক / ডিফল্ট নেই গৃহীত সমর্থিত output যাচাই ও package করে; external upload বা live deployment করে না।
উদাহরণ · bash
fpai-training --version
fpai-training --help
fpai-training init --directory ./german-project
# Replace training.json and rubric/data files with your reviewed configuration.
fpai-training doctor --config ./german-project/training.json
fpai-training plan --config ./german-project/training.json --dry-run
# Inspect resolved values, data sharing and budgets BEFORE the next command.
fpai-training run --config ./german-project/training.json
fpai-training status --run ./german-project/runs/german-001
fpai-training evaluate --run ./german-project/runs/german-001 --split test
fpai-training export --run ./german-project/runs/german-001 --format safetensors
# Supply the key through FUSIONPOINTAI_API_KEY, never a command-line argument.

নিরাপদে বিরতি, resume বা cancel করুন

Control command একটি নির্দিষ্ট মালিকানাধীন run directory-তে কাজ করে। Pause একটি atomic checkpoint ও worker acknowledgement-এর জন্য অপেক্ষা করে। Resume একই model, data, configuration, evaluator ও distributed topology যাচাই করে। Cancel শুধু ওই run-এর worker থামিয়ে চূড়ান্ত cancellation নথিবদ্ধ করে। একই control request পুনরায় দিলেও আরেকটি training process তৈরি হওয়া চলবে না।

  • Paused run পুনরুদ্ধারযোগ্য, সম্পন্ন নয়। Cancelled run গৃহীত deliverable নয়।
  • Foreground run চালু থাকলে control দেওয়ার জন্য দ্বিতীয় terminal ব্যবহার করুন।
  • Timeout-এর পর আবার চেষ্টা করার আগে status পড়ুন। Lock file মুছবেন না বা সম্পর্কহীন GPU job বন্ধ করবেন না।
কমান্ডের বিকল্প
ঘর বা ইন্টারফেসধরন বা ফলডিফল্ট বা exit codeআচরণ ও যাচাই
--directory path আবশ্যক / ডিফল্ট নেই init-এর জন্য আবশ্যক। লিখতে পারা যায় এমন নতুন project directory।
--config path আবশ্যক / ডিফল্ট নেই doctor, plan ও run-এর জন্য আবশ্যক। সম্পূর্ণ schema 1.0 file-এর path।
--run path আবশ্যক / ডিফল্ট নেই status, pause, resume, cancel, evaluate ও export-এর জন্য আবশ্যক। মালিকানাধীন run directory, account/session ID নয়।
--dry-run flag true স্পষ্ট plan flag; ওজন ও paid কাজের দিক থেকে plan সবসময় read-only। বিভ্রান্তিকর false/off execution mode নেই।
--split enum "test" শুধু evaluate: validation অথবা test। Test data উন্নতির কাজে কখনো ব্যবহৃত হয় না।
--format enum "safetensors" শুধু export: adapter-এর সক্ষমতা সাপেক্ষে safetensors অথবা adapters।
--help flag false Provider-এ access না করে executable বা command-এর help দেখায়।
--version flag false Configuration schema version নয়, ইনস্টল করা প্রকৃত release metadata দেখায়।
উদাহরণ · bash
# Run controls from a separate terminal if training is active.
fpai-training pause --run ./german-project/runs/german-001
# Wait for status=paused and a completed atomic checkpoint before stopping a host.
fpai-training status --run ./german-project/runs/german-001
fpai-training resume --run ./german-project/runs/german-001
# Cancellation is terminal; preserve existing artifacts, do not pretend it passed.
fpai-training cancel --run ./german-project/runs/german-001
# Repeat status, not run(), after a timeout. Never kill an unrelated process.

state এবং exit code একসঙ্গে বুঝুন

Exit zero মানে অনুরোধ করা কাজ সফল হয়েছে; সফল status read, pause বা dry run গৃহীত training নয়। Training result-এর জন্য completed state, গ্রহণযোগ্য stop reason এবং সব আবশ্যক evaluation criterion-ও লাগবে। ব্যর্থ লক্ষ্য প্রতিবেদনে ব্যর্থ হিসেবেই থাকবে, সফল বলে পুনর্লিখন করা হবে না।

  • Command stdout-এ machine-readable JSON এবং stderr-এ গোপন তথ্য বাদ দেওয়া diagnostic লেখে। কোনো stream-এই secret থাকে না।
  • Run ও resume চূড়ান্ত বা paused state পর্যন্ত অপেক্ষা করে; status বর্তমান snapshot দেয়।
  • সর্বোচ্চ চেষ্টা হিসেবে নিজের worker পরিষ্কার করার পর SIGINT exit code 130 দেয়। Interrupted process সম্পূর্ণ checkpoint আছে বলে ভান করতে পারে না।
উদাহরণ · text
SDK 0.2.0 EXIT AND STATE CONTRACT
0   accepted, successful read/control, or successful dry-run; inspect operation.
2   invalid configuration; no training started.
3   incompatible model/runtime/method/export combination.
4   authentication, entitlement or authorized-sharing failure.
5   resource budget exhausted; preserve latest valid checkpoint and report.
6   evaluation requirements not met; not an accepted model.
7   execution, checkpoint, cancellation-control or export failure.
130 interrupted by the caller.

Lifecycle:
planned -> preparing -> training -> evaluating -> completed
training -> pausing -> paused -> training (validated resume)
active -> cancelling -> cancelled
active -> failed

stop_reason: accepted | budget_exhausted | no_progress | regression |
             cancelled | failed
paused is a recoverable state, not an accepted training result.
completed requires stop_reason=accepted and all required criteria passing.
Repeated control requests must read/reuse the owned transition, not spawn workers.
One run lock prevents duplicate execution of the same run directory.