@synsci/cli-darwin-x64 1.1.71 → 1.1.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/bin/skills/citation-management/SKILL.md +1109 -0
  2. package/bin/skills/citation-management/assets/bibtex_template.bib +264 -0
  3. package/bin/skills/citation-management/assets/citation_checklist.md +386 -0
  4. package/bin/skills/citation-management/references/bibtex_formatting.md +908 -0
  5. package/bin/skills/citation-management/references/citation_validation.md +794 -0
  6. package/bin/skills/citation-management/references/google_scholar_search.md +725 -0
  7. package/bin/skills/citation-management/references/metadata_extraction.md +870 -0
  8. package/bin/skills/citation-management/references/pubmed_search.md +839 -0
  9. package/bin/skills/citation-management/scripts/doi_to_bibtex.py +182 -0
  10. package/bin/skills/citation-management/scripts/extract_metadata.py +570 -0
  11. package/bin/skills/citation-management/scripts/format_bibtex.py +349 -0
  12. package/bin/skills/citation-management/scripts/search_google_scholar.py +251 -0
  13. package/bin/skills/citation-management/scripts/search_pubmed.py +348 -0
  14. package/bin/skills/citation-management/scripts/validate_citations.py +494 -0
  15. package/bin/skills/clinical-decision-support/README.md +129 -0
  16. package/bin/skills/clinical-decision-support/SKILL.md +506 -0
  17. package/bin/skills/clinical-decision-support/assets/biomarker_report_template.tex +380 -0
  18. package/bin/skills/clinical-decision-support/assets/clinical_pathway_template.tex +222 -0
  19. package/bin/skills/clinical-decision-support/assets/cohort_analysis_template.tex +359 -0
  20. package/bin/skills/clinical-decision-support/assets/color_schemes.tex +149 -0
  21. package/bin/skills/clinical-decision-support/assets/example_gbm_cohort.md +208 -0
  22. package/bin/skills/clinical-decision-support/assets/recommendation_strength_guide.md +328 -0
  23. package/bin/skills/clinical-decision-support/assets/treatment_recommendation_template.tex +529 -0
  24. package/bin/skills/clinical-decision-support/references/biomarker_classification.md +719 -0
  25. package/bin/skills/clinical-decision-support/references/clinical_decision_algorithms.md +604 -0
  26. package/bin/skills/clinical-decision-support/references/evidence_synthesis.md +840 -0
  27. package/bin/skills/clinical-decision-support/references/outcome_analysis.md +640 -0
  28. package/bin/skills/clinical-decision-support/references/patient_cohort_analysis.md +427 -0
  29. package/bin/skills/clinical-decision-support/references/treatment_recommendations.md +521 -0
  30. package/bin/skills/clinical-decision-support/scripts/biomarker_classifier.py +383 -0
  31. package/bin/skills/clinical-decision-support/scripts/build_decision_tree.py +417 -0
  32. package/bin/skills/clinical-decision-support/scripts/create_cohort_tables.py +509 -0
  33. package/bin/skills/clinical-decision-support/scripts/generate_survival_analysis.py +441 -0
  34. package/bin/skills/clinical-decision-support/scripts/validate_cds_document.py +326 -0
  35. package/bin/skills/clinical-reports/IMPLEMENTATION_SUMMARY.md +641 -0
  36. package/bin/skills/clinical-reports/README.md +236 -0
  37. package/bin/skills/clinical-reports/SKILL.md +1127 -0
  38. package/bin/skills/clinical-reports/assets/case_report_template.md +352 -0
  39. package/bin/skills/clinical-reports/assets/clinical_trial_csr_template.md +353 -0
  40. package/bin/skills/clinical-reports/assets/clinical_trial_sae_template.md +359 -0
  41. package/bin/skills/clinical-reports/assets/consult_note_template.md +305 -0
  42. package/bin/skills/clinical-reports/assets/discharge_summary_template.md +453 -0
  43. package/bin/skills/clinical-reports/assets/hipaa_compliance_checklist.md +395 -0
  44. package/bin/skills/clinical-reports/assets/history_physical_template.md +305 -0
  45. package/bin/skills/clinical-reports/assets/lab_report_template.md +309 -0
  46. package/bin/skills/clinical-reports/assets/pathology_report_template.md +249 -0
  47. package/bin/skills/clinical-reports/assets/quality_checklist.md +338 -0
  48. package/bin/skills/clinical-reports/assets/radiology_report_template.md +318 -0
  49. package/bin/skills/clinical-reports/assets/soap_note_template.md +253 -0
  50. package/bin/skills/clinical-reports/references/case_report_guidelines.md +570 -0
  51. package/bin/skills/clinical-reports/references/clinical_trial_reporting.md +693 -0
  52. package/bin/skills/clinical-reports/references/data_presentation.md +530 -0
  53. package/bin/skills/clinical-reports/references/diagnostic_reports_standards.md +629 -0
  54. package/bin/skills/clinical-reports/references/medical_terminology.md +588 -0
  55. package/bin/skills/clinical-reports/references/patient_documentation.md +744 -0
  56. package/bin/skills/clinical-reports/references/peer_review_standards.md +585 -0
  57. package/bin/skills/clinical-reports/references/regulatory_compliance.md +577 -0
  58. package/bin/skills/clinical-reports/scripts/check_deidentification.py +332 -0
  59. package/bin/skills/clinical-reports/scripts/compliance_checker.py +78 -0
  60. package/bin/skills/clinical-reports/scripts/extract_clinical_data.py +97 -0
  61. package/bin/skills/clinical-reports/scripts/format_adverse_events.py +97 -0
  62. package/bin/skills/clinical-reports/scripts/generate_report_template.py +149 -0
  63. package/bin/skills/clinical-reports/scripts/terminology_validator.py +126 -0
  64. package/bin/skills/clinical-reports/scripts/validate_case_report.py +323 -0
  65. package/bin/skills/clinical-reports/scripts/validate_trial_report.py +88 -0
  66. package/bin/skills/fireworks-ai/SKILL.md +665 -0
  67. package/bin/skills/generate-image/SKILL.md +178 -0
  68. package/bin/skills/generate-image/scripts/generate_image.py +254 -0
  69. package/bin/skills/groq/SKILL.md +347 -0
  70. package/bin/skills/hypothesis-generation/SKILL.md +293 -0
  71. package/bin/skills/hypothesis-generation/assets/FORMATTING_GUIDE.md +672 -0
  72. package/bin/skills/hypothesis-generation/assets/hypothesis_generation.sty +307 -0
  73. package/bin/skills/hypothesis-generation/assets/hypothesis_report_template.tex +572 -0
  74. package/bin/skills/hypothesis-generation/references/experimental_design_patterns.md +329 -0
  75. package/bin/skills/hypothesis-generation/references/hypothesis_quality_criteria.md +198 -0
  76. package/bin/skills/hypothesis-generation/references/literature_search_strategies.md +622 -0
  77. package/bin/skills/latex-posters/README.md +417 -0
  78. package/bin/skills/latex-posters/SKILL.md +1602 -0
  79. package/bin/skills/latex-posters/assets/baposter_template.tex +257 -0
  80. package/bin/skills/latex-posters/assets/beamerposter_template.tex +244 -0
  81. package/bin/skills/latex-posters/assets/poster_quality_checklist.md +358 -0
  82. package/bin/skills/latex-posters/assets/tikzposter_template.tex +251 -0
  83. package/bin/skills/latex-posters/references/latex_poster_packages.md +745 -0
  84. package/bin/skills/latex-posters/references/poster_content_guide.md +748 -0
  85. package/bin/skills/latex-posters/references/poster_design_principles.md +806 -0
  86. package/bin/skills/latex-posters/references/poster_layout_design.md +900 -0
  87. package/bin/skills/latex-posters/scripts/review_poster.sh +214 -0
  88. package/bin/skills/literature-review/SKILL.md +641 -0
  89. package/bin/skills/literature-review/assets/review_template.md +412 -0
  90. package/bin/skills/literature-review/references/citation_styles.md +166 -0
  91. package/bin/skills/literature-review/references/database_strategies.md +455 -0
  92. package/bin/skills/literature-review/scripts/generate_pdf.py +184 -0
  93. package/bin/skills/literature-review/scripts/search_databases.py +310 -0
  94. package/bin/skills/literature-review/scripts/verify_citations.py +218 -0
  95. package/bin/skills/market-research-reports/SKILL.md +904 -0
  96. package/bin/skills/market-research-reports/assets/FORMATTING_GUIDE.md +428 -0
  97. package/bin/skills/market-research-reports/assets/market_report_template.tex +1380 -0
  98. package/bin/skills/market-research-reports/assets/market_research.sty +564 -0
  99. package/bin/skills/market-research-reports/references/data_analysis_patterns.md +548 -0
  100. package/bin/skills/market-research-reports/references/report_structure_guide.md +999 -0
  101. package/bin/skills/market-research-reports/references/visual_generation_guide.md +1077 -0
  102. package/bin/skills/market-research-reports/scripts/generate_market_visuals.py +472 -0
  103. package/bin/skills/markitdown/INSTALLATION_GUIDE.md +318 -0
  104. package/bin/skills/markitdown/LICENSE.txt +22 -0
  105. package/bin/skills/markitdown/OPENROUTER_INTEGRATION.md +359 -0
  106. package/bin/skills/markitdown/QUICK_REFERENCE.md +309 -0
  107. package/bin/skills/markitdown/README.md +184 -0
  108. package/bin/skills/markitdown/SKILL.md +486 -0
  109. package/bin/skills/markitdown/SKILL_SUMMARY.md +307 -0
  110. package/bin/skills/markitdown/assets/example_usage.md +463 -0
  111. package/bin/skills/markitdown/references/api_reference.md +399 -0
  112. package/bin/skills/markitdown/references/file_formats.md +542 -0
  113. package/bin/skills/markitdown/scripts/batch_convert.py +195 -0
  114. package/bin/skills/markitdown/scripts/convert_literature.py +262 -0
  115. package/bin/skills/markitdown/scripts/convert_with_ai.py +224 -0
  116. package/bin/skills/ml-paper-writing/SKILL.md +937 -0
  117. package/bin/skills/ml-paper-writing/references/checklists.md +361 -0
  118. package/bin/skills/ml-paper-writing/references/citation-workflow.md +562 -0
  119. package/bin/skills/ml-paper-writing/references/reviewer-guidelines.md +367 -0
  120. package/bin/skills/ml-paper-writing/references/sources.md +159 -0
  121. package/bin/skills/ml-paper-writing/references/writing-guide.md +476 -0
  122. package/bin/skills/ml-paper-writing/templates/README.md +251 -0
  123. package/bin/skills/ml-paper-writing/templates/aaai2026/README.md +534 -0
  124. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  125. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  126. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  127. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  128. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  129. package/bin/skills/ml-paper-writing/templates/acl/README.md +50 -0
  130. package/bin/skills/ml-paper-writing/templates/acl/acl.sty +312 -0
  131. package/bin/skills/ml-paper-writing/templates/acl/acl_latex.tex +377 -0
  132. package/bin/skills/ml-paper-writing/templates/acl/acl_lualatex.tex +101 -0
  133. package/bin/skills/ml-paper-writing/templates/acl/acl_natbib.bst +1940 -0
  134. package/bin/skills/ml-paper-writing/templates/acl/anthology.bib.txt +26 -0
  135. package/bin/skills/ml-paper-writing/templates/acl/custom.bib +70 -0
  136. package/bin/skills/ml-paper-writing/templates/acl/formatting.md +326 -0
  137. package/bin/skills/ml-paper-writing/templates/colm2025/README.md +3 -0
  138. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  139. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  140. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  141. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  142. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  143. package/bin/skills/ml-paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  144. package/bin/skills/ml-paper-writing/templates/colm2025/math_commands.tex +508 -0
  145. package/bin/skills/ml-paper-writing/templates/colm2025/natbib.sty +1246 -0
  146. package/bin/skills/ml-paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  147. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  148. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  149. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  150. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  151. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  152. package/bin/skills/ml-paper-writing/templates/iclr2026/math_commands.tex +508 -0
  153. package/bin/skills/ml-paper-writing/templates/iclr2026/natbib.sty +1246 -0
  154. package/bin/skills/ml-paper-writing/templates/icml2026/algorithm.sty +79 -0
  155. package/bin/skills/ml-paper-writing/templates/icml2026/algorithmic.sty +201 -0
  156. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.bib +75 -0
  157. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.pdf +0 -0
  158. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.tex +662 -0
  159. package/bin/skills/ml-paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  160. package/bin/skills/ml-paper-writing/templates/icml2026/icml2026.bst +1443 -0
  161. package/bin/skills/ml-paper-writing/templates/icml2026/icml2026.sty +767 -0
  162. package/bin/skills/ml-paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  163. package/bin/skills/ml-paper-writing/templates/neurips2025/Makefile +36 -0
  164. package/bin/skills/ml-paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  165. package/bin/skills/ml-paper-writing/templates/neurips2025/main.tex +38 -0
  166. package/bin/skills/ml-paper-writing/templates/neurips2025/neurips.sty +382 -0
  167. package/bin/skills/paper-2-web/SKILL.md +491 -0
  168. package/bin/skills/paper-2-web/references/installation.md +141 -0
  169. package/bin/skills/paper-2-web/references/paper2poster.md +346 -0
  170. package/bin/skills/paper-2-web/references/paper2video.md +305 -0
  171. package/bin/skills/paper-2-web/references/paper2web.md +187 -0
  172. package/bin/skills/paper-2-web/references/usage_examples.md +436 -0
  173. package/bin/skills/peer-review/SKILL.md +702 -0
  174. package/bin/skills/peer-review/references/calibration_guidelines.md +196 -0
  175. package/bin/skills/peer-review/references/common_issues.md +552 -0
  176. package/bin/skills/peer-review/references/paper_mechanics.md +269 -0
  177. package/bin/skills/peer-review/references/reporting_standards.md +290 -0
  178. package/bin/skills/peer-review/references/scoring_rubric.md +239 -0
  179. package/bin/skills/pptx-posters/SKILL.md +410 -0
  180. package/bin/skills/pptx-posters/assets/poster_html_template.html +257 -0
  181. package/bin/skills/pptx-posters/assets/poster_quality_checklist.md +358 -0
  182. package/bin/skills/pptx-posters/references/poster_content_guide.md +748 -0
  183. package/bin/skills/pptx-posters/references/poster_design_principles.md +806 -0
  184. package/bin/skills/pptx-posters/references/poster_layout_design.md +900 -0
  185. package/bin/skills/research-grants/README.md +285 -0
  186. package/bin/skills/research-grants/SKILL.md +938 -0
  187. package/bin/skills/research-grants/assets/budget_justification_template.md +453 -0
  188. package/bin/skills/research-grants/assets/nih_specific_aims_template.md +166 -0
  189. package/bin/skills/research-grants/assets/nsf_project_summary_template.md +92 -0
  190. package/bin/skills/research-grants/references/broader_impacts.md +392 -0
  191. package/bin/skills/research-grants/references/darpa_guidelines.md +636 -0
  192. package/bin/skills/research-grants/references/doe_guidelines.md +586 -0
  193. package/bin/skills/research-grants/references/nih_guidelines.md +851 -0
  194. package/bin/skills/research-grants/references/nsf_guidelines.md +570 -0
  195. package/bin/skills/research-grants/references/specific_aims_guide.md +458 -0
  196. package/bin/skills/research-lookup/README.md +156 -0
  197. package/bin/skills/research-lookup/SKILL.md +606 -0
  198. package/bin/skills/research-lookup/examples.py +174 -0
  199. package/bin/skills/research-lookup/lookup.py +187 -0
  200. package/bin/skills/research-lookup/research_lookup.py +483 -0
  201. package/bin/skills/research-lookup/scripts/research_lookup.py +483 -0
  202. package/bin/skills/scholar-evaluation/SKILL.md +289 -0
  203. package/bin/skills/scholar-evaluation/references/evaluation_framework.md +663 -0
  204. package/bin/skills/scholar-evaluation/scripts/calculate_scores.py +366 -0
  205. package/bin/skills/scientific-critical-thinking/SKILL.md +566 -0
  206. package/bin/skills/scientific-critical-thinking/references/common_biases.md +364 -0
  207. package/bin/skills/scientific-critical-thinking/references/evidence_hierarchy.md +484 -0
  208. package/bin/skills/scientific-critical-thinking/references/experimental_design.md +496 -0
  209. package/bin/skills/scientific-critical-thinking/references/logical_fallacies.md +478 -0
  210. package/bin/skills/scientific-critical-thinking/references/scientific_method.md +169 -0
  211. package/bin/skills/scientific-critical-thinking/references/statistical_pitfalls.md +506 -0
  212. package/bin/skills/scientific-schematics/QUICK_REFERENCE.md +207 -0
  213. package/bin/skills/scientific-schematics/README.md +327 -0
  214. package/bin/skills/scientific-schematics/SKILL.md +615 -0
  215. package/bin/skills/scientific-schematics/example_usage.sh +89 -0
  216. package/bin/skills/scientific-schematics/references/best_practices.md +559 -0
  217. package/bin/skills/scientific-schematics/scripts/generate_schematic.py +135 -0
  218. package/bin/skills/scientific-schematics/scripts/generate_schematic_ai.py +807 -0
  219. package/bin/skills/scientific-schematics/test_ai_generation.py +243 -0
  220. package/bin/skills/scientific-slides/SKILL.md +942 -0
  221. package/bin/skills/scientific-slides/assets/timing_guidelines.md +597 -0
  222. package/bin/skills/scientific-slides/references/data_visualization_slides.md +708 -0
  223. package/bin/skills/scientific-slides/references/presentation_structure.md +642 -0
  224. package/bin/skills/scientific-slides/references/slide_design_principles.md +849 -0
  225. package/bin/skills/scientific-slides/references/talk_types_guide.md +687 -0
  226. package/bin/skills/scientific-slides/references/visual_review_workflow.md +775 -0
  227. package/bin/skills/scientific-slides/scripts/generate_slide_image.py +143 -0
  228. package/bin/skills/scientific-slides/scripts/generate_slide_image_ai.py +748 -0
  229. package/bin/skills/scientific-slides/scripts/pdf_to_images.py +201 -0
  230. package/bin/skills/scientific-slides/scripts/slides_to_pdf.py +220 -0
  231. package/bin/skills/scientific-slides/scripts/validate_presentation.py +367 -0
  232. package/bin/skills/scientific-writing/SKILL.md +714 -0
  233. package/bin/skills/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
  234. package/bin/skills/scientific-writing/assets/scientific_report.sty +606 -0
  235. package/bin/skills/scientific-writing/assets/scientific_report_template.tex +449 -0
  236. package/bin/skills/scientific-writing/references/citation_styles.md +720 -0
  237. package/bin/skills/scientific-writing/references/figures_tables.md +806 -0
  238. package/bin/skills/scientific-writing/references/imrad_structure.md +686 -0
  239. package/bin/skills/scientific-writing/references/professional_report_formatting.md +664 -0
  240. package/bin/skills/scientific-writing/references/reporting_guidelines.md +748 -0
  241. package/bin/skills/scientific-writing/references/writing_principles.md +824 -0
  242. package/bin/skills/tinker/SKILL.md +2 -3
  243. package/bin/skills/together-ai/SKILL.md +722 -0
  244. package/bin/skills/treatment-plans/README.md +488 -0
  245. package/bin/skills/treatment-plans/SKILL.md +1579 -0
  246. package/bin/skills/treatment-plans/assets/STYLING_QUICK_REFERENCE.md +185 -0
  247. package/bin/skills/treatment-plans/assets/chronic_disease_management_plan.tex +665 -0
  248. package/bin/skills/treatment-plans/assets/general_medical_treatment_plan.tex +547 -0
  249. package/bin/skills/treatment-plans/assets/medical_treatment_plan.sty +222 -0
  250. package/bin/skills/treatment-plans/assets/mental_health_treatment_plan.tex +774 -0
  251. package/bin/skills/treatment-plans/assets/one_page_treatment_plan.tex +193 -0
  252. package/bin/skills/treatment-plans/assets/pain_management_plan.tex +799 -0
  253. package/bin/skills/treatment-plans/assets/perioperative_care_plan.tex +753 -0
  254. package/bin/skills/treatment-plans/assets/quality_checklist.md +471 -0
  255. package/bin/skills/treatment-plans/assets/rehabilitation_treatment_plan.tex +756 -0
  256. package/bin/skills/treatment-plans/references/goal_setting_frameworks.md +411 -0
  257. package/bin/skills/treatment-plans/references/intervention_guidelines.md +507 -0
  258. package/bin/skills/treatment-plans/references/regulatory_compliance.md +476 -0
  259. package/bin/skills/treatment-plans/references/specialty_specific_guidelines.md +655 -0
  260. package/bin/skills/treatment-plans/references/treatment_plan_standards.md +485 -0
  261. package/bin/skills/treatment-plans/scripts/check_completeness.py +322 -0
  262. package/bin/skills/treatment-plans/scripts/generate_template.py +233 -0
  263. package/bin/skills/treatment-plans/scripts/timeline_generator.py +385 -0
  264. package/bin/skills/treatment-plans/scripts/validate_treatment_plan.py +369 -0
  265. package/bin/skills/unsloth/SKILL.md +565 -47
  266. package/bin/skills/unsloth/docs/advanced-rl.md +222 -0
  267. package/bin/skills/unsloth/docs/chat-templates.md +141 -0
  268. package/bin/skills/unsloth/docs/datasets.md +489 -0
  269. package/bin/skills/unsloth/docs/docker-extended.md +99 -0
  270. package/bin/skills/unsloth/docs/dynamic-ggufs-2.0.md +116 -0
  271. package/bin/skills/unsloth/docs/dynamic-ggufs-aider.md +118 -0
  272. package/bin/skills/unsloth/docs/faq.md +91 -0
  273. package/bin/skills/unsloth/docs/fp16-vs-bf16.md +61 -0
  274. package/bin/skills/unsloth/docs/fp8-rl.md +224 -0
  275. package/bin/skills/unsloth/docs/glm-4.7-flash.md +997 -0
  276. package/bin/skills/unsloth/docs/inference-deployment-overview.md +17 -0
  277. package/bin/skills/unsloth/docs/inference.md +27 -0
  278. package/bin/skills/unsloth/docs/installation-docker.md +155 -0
  279. package/bin/skills/unsloth/docs/installation-pip.md +148 -0
  280. package/bin/skills/unsloth/docs/kernels-packing.md +190 -0
  281. package/bin/skills/unsloth/docs/kimi-k2.5.md +634 -0
  282. package/bin/skills/unsloth/docs/lm-studio.md +235 -0
  283. package/bin/skills/unsloth/docs/lora-hot-swapping.md +75 -0
  284. package/bin/skills/unsloth/docs/lora-hyperparameters.md +363 -0
  285. package/bin/skills/unsloth/docs/memory-efficient-rl.md +267 -0
  286. package/bin/skills/unsloth/docs/model-selection.md +70 -0
  287. package/bin/skills/unsloth/docs/models.md +532 -0
  288. package/bin/skills/unsloth/docs/multi-gpu-ddp.md +90 -0
  289. package/bin/skills/unsloth/docs/notebooks.md +223 -0
  290. package/bin/skills/unsloth/docs/overview.md +110 -0
  291. package/bin/skills/unsloth/docs/qwen3-coder-next-extended.md +900 -0
  292. package/bin/skills/unsloth/docs/qwen3-coder-next.md +900 -0
  293. package/bin/skills/unsloth/docs/requirements.md +45 -0
  294. package/bin/skills/unsloth/docs/reward-hacking.md +25 -0
  295. package/bin/skills/unsloth/docs/saving-to-gguf.md +138 -0
  296. package/bin/skills/unsloth/docs/saving-to-ollama.md +46 -0
  297. package/bin/skills/unsloth/docs/sglang-guide.md +278 -0
  298. package/bin/skills/unsloth/docs/speculative-decoding.md +70 -0
  299. package/bin/skills/unsloth/docs/tool-calling.md +334 -0
  300. package/bin/skills/unsloth/docs/troubleshooting-faq.md +204 -0
  301. package/bin/skills/unsloth/docs/troubleshooting-inference.md +26 -0
  302. package/bin/skills/unsloth/docs/tts-fine-tuning.md +149 -0
  303. package/bin/skills/unsloth/docs/tutorial-grpo.md +273 -0
  304. package/bin/skills/unsloth/docs/tutorial-llama3-ollama.md +356 -0
  305. package/bin/skills/unsloth/docs/vision-fine-tuning.md +135 -0
  306. package/bin/skills/unsloth/docs/vision-rl.md +170 -0
  307. package/bin/skills/unsloth/docs/vllm-engine-arguments.md +43 -0
  308. package/bin/skills/unsloth/docs/vllm-guide.md +98 -0
  309. package/bin/skills/venue-templates/SKILL.md +686 -0
  310. package/bin/skills/venue-templates/assets/examples/cell_summary_example.md +247 -0
  311. package/bin/skills/venue-templates/assets/examples/medical_structured_abstract.md +313 -0
  312. package/bin/skills/venue-templates/assets/examples/nature_abstract_examples.md +213 -0
  313. package/bin/skills/venue-templates/assets/examples/neurips_introduction_example.md +245 -0
  314. package/bin/skills/venue-templates/assets/grants/nih_specific_aims.tex +235 -0
  315. package/bin/skills/venue-templates/assets/grants/nsf_proposal_template.tex +375 -0
  316. package/bin/skills/venue-templates/assets/journals/nature_article.tex +171 -0
  317. package/bin/skills/venue-templates/assets/journals/neurips_article.tex +283 -0
  318. package/bin/skills/venue-templates/assets/journals/plos_one.tex +317 -0
  319. package/bin/skills/venue-templates/assets/posters/beamerposter_academic.tex +311 -0
  320. package/bin/skills/venue-templates/references/cell_press_style.md +483 -0
  321. package/bin/skills/venue-templates/references/conferences_formatting.md +564 -0
  322. package/bin/skills/venue-templates/references/cs_conference_style.md +463 -0
  323. package/bin/skills/venue-templates/references/grants_requirements.md +787 -0
  324. package/bin/skills/venue-templates/references/journals_formatting.md +486 -0
  325. package/bin/skills/venue-templates/references/medical_journal_styles.md +535 -0
  326. package/bin/skills/venue-templates/references/ml_conference_style.md +556 -0
  327. package/bin/skills/venue-templates/references/nature_science_style.md +405 -0
  328. package/bin/skills/venue-templates/references/posters_guidelines.md +628 -0
  329. package/bin/skills/venue-templates/references/reviewer_expectations.md +417 -0
  330. package/bin/skills/venue-templates/references/venue_writing_styles.md +321 -0
  331. package/bin/skills/venue-templates/scripts/customize_template.py +195 -0
  332. package/bin/skills/venue-templates/scripts/query_template.py +266 -0
  333. package/bin/skills/venue-templates/scripts/validate_format.py +250 -0
  334. package/bin/synsc +0 -0
  335. package/package.json +1 -1
  336. package/bin/skills/unsloth/references/index.md +0 -7
  337. package/bin/skills/unsloth/references/llms-full.md +0 -16799
  338. package/bin/skills/unsloth/references/llms-txt.md +0 -12044
  339. package/bin/skills/unsloth/references/llms.md +0 -82
@@ -0,0 +1,665 @@
1
+ ---
2
+ name: fireworks-ai-inference
3
+ description: Fast inference and fine-tuning platform with serverless and on-demand GPU deployments. OpenAI-compatible API for chat completions, embeddings, function calling, vision, and structured output. Supports SFT, DPO, and RL fine-tuning. SOC2 + HIPAA compliant.
4
+ version: 1.0.0
5
+ author: Synthetic Sciences
6
+ license: MIT
7
+ tags: [Inference, Fireworks AI, Fine-Tuning, Serverless, On-Demand GPU, OpenAI-Compatible]
8
+ dependencies: [fireworks-ai, openai]
9
+ ---
10
+
11
+ # Fireworks AI -- Fast Inference & Fine-Tuning
12
+
13
+ Fastest open-model inference platform with serverless and on-demand GPU deployments, OpenAI-compatible API, and built-in fine-tuning (SFT, DPO, RL).
14
+
15
+ ## When to Use Fireworks AI
16
+
17
+ **Use Fireworks AI when:**
18
+ - Need fast serverless inference for open-source models (Llama, Qwen, DeepSeek, Mixtral)
19
+ - Want OpenAI SDK drop-in replacement with open models
20
+ - Need fine-tuning without managing infrastructure (SFT, DPO, RL)
21
+ - Require structured output / JSON mode / function calling with open models
22
+ - Need dedicated GPU deployments with predictable latency
23
+ - Require SOC2 or HIPAA compliance
24
+ - Want prompt caching and batch inference for cost savings
25
+
26
+ **Use alternatives instead:**
27
+
28
+ | Need | Use Instead |
29
+ |------|-------------|
30
+ | Self-hosted inference (full control) | **vLLM**, **TensorRT-LLM** |
31
+ | Cheapest serverless inference | **Groq** (free tier), **Together AI** |
32
+ | Managed LoRA fine-tuning (no infra) | **Tinker** |
33
+ | Closed-model APIs (GPT-4, Claude) | **OpenAI**, **Anthropic** direct |
34
+ | GPU instances with SSH access | **Lambda Labs**, **RunPod** |
35
+ | Multi-cloud orchestration | **SkyPilot** |
36
+
37
+ ## Quick Start
38
+
39
+ ### Install
40
+
41
+ ```python
42
+ pip install fireworks-ai openai
43
+ ```
44
+
45
+ ### Set API key
46
+
47
+ ```python
48
+ import os
49
+ os.environ["FIREWORKS_API_KEY"] = "fw_..." # from https://fireworks.ai/api-keys
50
+ ```
51
+
52
+ ### Basic chat completion
53
+
54
+ ```python
55
+ from openai import OpenAI
56
+
57
+ client = OpenAI(
58
+ base_url="https://api.fireworks.ai/inference/v1",
59
+ api_key=os.environ["FIREWORKS_API_KEY"],
60
+ )
61
+
62
+ response = client.chat.completions.create(
63
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
64
+ messages=[
65
+ {"role": "system", "content": "You are a helpful assistant."},
66
+ {"role": "user", "content": "Explain gradient descent in two sentences."},
67
+ ],
68
+ max_tokens=256,
69
+ temperature=0.7,
70
+ )
71
+ print(response.choices[0].message.content)
72
+ ```
73
+
74
+ ## Inference
75
+
76
+ ### Chat completions
77
+
78
+ **Endpoint:** `POST https://api.fireworks.ai/inference/v1/chat/completions`
79
+
80
+ ```python
81
+ from openai import OpenAI
82
+
83
+ client = OpenAI(
84
+ base_url="https://api.fireworks.ai/inference/v1",
85
+ api_key=os.environ["FIREWORKS_API_KEY"],
86
+ )
87
+
88
+ response = client.chat.completions.create(
89
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
90
+ messages=[
91
+ {"role": "user", "content": "Write a Python quicksort function."},
92
+ ],
93
+ max_tokens=512,
94
+ temperature=0.0,
95
+ )
96
+ print(response.choices[0].message.content)
97
+ ```
98
+
99
+ ### Streaming
100
+
101
+ ```python
102
+ stream = client.chat.completions.create(
103
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
104
+ messages=[{"role": "user", "content": "Explain transformers."}],
105
+ stream=True,
106
+ max_tokens=512,
107
+ )
108
+ for chunk in stream:
109
+ delta = chunk.choices[0].delta.content
110
+ if delta:
111
+ print(delta, end="", flush=True)
112
+ ```
113
+
114
+ ### Function calling / tool use
115
+
116
+ ```python
117
+ tools = [
118
+ {
119
+ "type": "function",
120
+ "function": {
121
+ "name": "get_weather",
122
+ "description": "Get current weather for a location",
123
+ "parameters": {
124
+ "type": "object",
125
+ "properties": {
126
+ "location": {"type": "string", "description": "City name"},
127
+ "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]},
128
+ },
129
+ "required": ["location"],
130
+ },
131
+ },
132
+ }
133
+ ]
134
+
135
+ response = client.chat.completions.create(
136
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
137
+ messages=[{"role": "user", "content": "What is the weather in San Francisco?"}],
138
+ tools=tools,
139
+ tool_choice="auto",
140
+ )
141
+ tool_call = response.choices[0].message.tool_calls[0]
142
+ print(tool_call.function.name, tool_call.function.arguments)
143
+ ```
144
+
145
+ ### Structured output / JSON mode
146
+
147
+ ```python
148
+ response = client.chat.completions.create(
149
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
150
+ messages=[{"role": "user", "content": "List 3 planets with mass and diameter."}],
151
+ response_format={"type": "json_object"},
152
+ max_tokens=512,
153
+ )
154
+ import json
155
+ data = json.loads(response.choices[0].message.content)
156
+ ```
157
+
158
+ For strict schema enforcement, use `response_format` with a JSON schema:
159
+
160
+ ```python
161
+ response = client.chat.completions.create(
162
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
163
+ messages=[{"role": "user", "content": "Extract name and age from: John is 30."}],
164
+ response_format={
165
+ "type": "json_object",
166
+ "schema": {
167
+ "type": "object",
168
+ "properties": {
169
+ "name": {"type": "string"},
170
+ "age": {"type": "integer"},
171
+ },
172
+ "required": ["name", "age"],
173
+ },
174
+ },
175
+ )
176
+ ```
177
+
178
+ ### Vision (multimodal)
179
+
180
+ ```python
181
+ response = client.chat.completions.create(
182
+ model="accounts/fireworks/models/llama-v3p2-11b-vision-instruct",
183
+ messages=[
184
+ {
185
+ "role": "user",
186
+ "content": [
187
+ {"type": "text", "text": "Describe this image."},
188
+ {
189
+ "type": "image_url",
190
+ "image_url": {"url": "https://example.com/photo.jpg"},
191
+ },
192
+ ],
193
+ }
194
+ ],
195
+ max_tokens=256,
196
+ )
197
+ print(response.choices[0].message.content)
198
+ ```
199
+
200
+ ## Fine-Tuning
201
+
202
+ Fireworks supports three fine-tuning methods: Supervised Fine-Tuning (SFT), Direct Preference Optimization (DPO), and Reinforcement Fine-Tuning (RL). All use LoRA adapters by default.
203
+
204
+ ### SFT -- Supervised Fine-Tuning
205
+
206
+ **Data format (JSONL):** Each line is a conversation with `messages` array:
207
+
208
+ ```json
209
+ {"messages": [{"role": "system", "content": "You are a coding assistant."}, {"role": "user", "content": "Write a Python hello world."}, {"role": "assistant", "content": "print('Hello, world!')"}]}
210
+ {"messages": [{"role": "user", "content": "What is 2+2?"}, {"role": "assistant", "content": "4"}]}
211
+ ```
212
+
213
+ **Create SFT job via API:**
214
+
215
+ ```python
216
+ import requests
217
+
218
+ url = "https://api.fireworks.ai/v1/accounts/{account_id}/supervisedFineTuningJobs"
219
+ headers = {
220
+ "Authorization": f"Bearer {os.environ['FIREWORKS_API_KEY']}",
221
+ "Content-Type": "application/json",
222
+ }
223
+ payload = {
224
+ "displayName": "my-sft-job",
225
+ "model": "accounts/fireworks/models/llama-v3p3-70b-instruct",
226
+ "dataset": "accounts/{account_id}/datasets/{dataset_id}",
227
+ "hyperparameters": {
228
+ "epochs": 3,
229
+ "learning_rate": 1e-4,
230
+ "batch_size": 8,
231
+ "lora_rank": 16,
232
+ },
233
+ }
234
+ response = requests.post(url, headers=headers, json=payload)
235
+ job = response.json()
236
+ print(f"Job ID: {job['name']}")
237
+ ```
238
+
239
+ **Monitor job:**
240
+
241
+ ```python
242
+ job_url = f"https://api.fireworks.ai/v1/{job['name']}"
243
+ status = requests.get(job_url, headers=headers).json()
244
+ print(f"State: {status['state']}, Progress: {status.get('progress', 'N/A')}")
245
+ ```
246
+
247
+ ### DPO -- Direct Preference Optimization
248
+
249
+ **Data format (JSONL):** Each line has `chosen` and `rejected` conversations:
250
+
251
+ ```json
252
+ {"chosen": [{"role": "user", "content": "Explain ML"}, {"role": "assistant", "content": "Machine learning is..."}], "rejected": [{"role": "user", "content": "Explain ML"}, {"role": "assistant", "content": "ML is complicated..."}]}
253
+ ```
254
+
255
+ **Create DPO job:**
256
+
257
+ ```python
258
+ url = "https://api.fireworks.ai/v1/accounts/{account_id}/dpoFineTuningJobs"
259
+ payload = {
260
+ "displayName": "my-dpo-job",
261
+ "model": "accounts/fireworks/models/llama-v3p3-70b-instruct",
262
+ "dataset": "accounts/{account_id}/datasets/{dataset_id}",
263
+ "hyperparameters": {
264
+ "epochs": 2,
265
+ "learning_rate": 5e-5,
266
+ "beta": 0.1,
267
+ },
268
+ }
269
+ response = requests.post(url, headers=headers, json=payload)
270
+ ```
271
+
272
+ ### RL -- Reinforcement Fine-Tuning
273
+
274
+ Reinforcement fine-tuning uses a reward model or reward function to optimize the base model. Jobs run on on-demand GPUs and are billed at GPU-hour rates.
275
+
276
+ **Create RL job:**
277
+
278
+ ```python
279
+ url = "https://api.fireworks.ai/v1/accounts/{account_id}/reinforcementFineTuningJobs"
280
+ payload = {
281
+ "displayName": "my-rl-job",
282
+ "baseModel": "accounts/fireworks/models/llama-v3p3-70b-instruct",
283
+ "rewardModel": "accounts/{account_id}/models/{reward_model_id}",
284
+ "dataset": "accounts/{account_id}/datasets/{dataset_id}",
285
+ }
286
+ response = requests.post(url, headers=headers, json=payload)
287
+ ```
288
+
289
+ ### Fine-tuning pricing
290
+
291
+ | Model Size | SFT ($/hr) | DPO ($/hr) |
292
+ |------------|------------|------------|
293
+ | Up to 16B | $0.50 | $1.00 |
294
+ | 16B - 80B | $3.00 | $6.00 |
295
+ | 80B - 300B | $6.00 | $12.00 |
296
+ | 300B+ | $10.00 | $20.00 |
297
+
298
+ RL fine-tuning is billed at on-demand GPU rates.
299
+
300
+ ## On-Demand GPU Deployments
301
+
302
+ Dedicated GPU deployments provide predictable latency, no rate limits, and support for custom/fine-tuned models. Billed per GPU-second.
303
+
304
+ ### Create deployment
305
+
306
+ ```python
307
+ import requests
308
+
309
+ url = "https://api.fireworks.ai/v1/accounts/{account_id}/deployments"
310
+ headers = {
311
+ "Authorization": f"Bearer {os.environ['FIREWORKS_API_KEY']}",
312
+ "Content-Type": "application/json",
313
+ }
314
+ payload = {
315
+ "displayName": "my-llama-deployment",
316
+ "model": "accounts/fireworks/models/llama-v3p3-70b-instruct",
317
+ "deploymentShape": "fast", # Options: fast, throughput, minimal
318
+ "minReplicaCount": 1,
319
+ "maxReplicaCount": 4,
320
+ }
321
+ response = requests.post(url, headers=headers, json=payload)
322
+ deployment = response.json()
323
+ ```
324
+
325
+ ### Deployment shapes
326
+
327
+ | Shape | Optimized For | Use Case |
328
+ |-------|---------------|----------|
329
+ | `fast` | Lowest latency | Real-time chat, interactive apps |
330
+ | `throughput` | Maximum tokens/sec | Batch processing, high volume |
331
+ | `minimal` | Lowest cost | Development, testing |
332
+
333
+ ### GPU options and pricing
334
+
335
+ | GPU | VRAM | Price/GPU/hr |
336
+ |-----|------|--------------|
337
+ | A100 80GB | 80 GB | $2.90 |
338
+ | H100 80GB | 80 GB | $4.00 |
339
+ | H200 141GB | 141 GB | $6.00 |
340
+ | B200 180GB | 180 GB | $9.00 |
341
+
342
+ ### Manage deployments
343
+
344
+ ```python
345
+ # List deployments
346
+ deployments = requests.get(
347
+ f"https://api.fireworks.ai/v1/accounts/{{account_id}}/deployments",
348
+ headers=headers,
349
+ ).json()
350
+
351
+ # Scale deployment
352
+ requests.patch(
353
+ f"https://api.fireworks.ai/v1/{deployment['name']}",
354
+ headers=headers,
355
+ json={"minReplicaCount": 2, "maxReplicaCount": 8},
356
+ )
357
+
358
+ # Delete deployment
359
+ requests.delete(
360
+ f"https://api.fireworks.ai/v1/{deployment['name']}",
361
+ headers=headers,
362
+ )
363
+ ```
364
+
365
+ ### Query your deployment
366
+
367
+ Once deployed, query using the same OpenAI-compatible API but with your deployment's model ID:
368
+
369
+ ```python
370
+ response = client.chat.completions.create(
371
+ model="accounts/{account_id}/deployments/{deployment_id}",
372
+ messages=[{"role": "user", "content": "Hello!"}],
373
+ )
374
+ ```
375
+
376
+ ## Embeddings
377
+
378
+ **Endpoint:** `POST https://api.fireworks.ai/inference/v1/embeddings`
379
+
380
+ ### Supported embedding models
381
+
382
+ | Model ID | Dimensions |
383
+ |----------|------------|
384
+ | `nomic-ai/nomic-embed-text-v1.5` | 768 |
385
+ | `nomic-ai/nomic-embed-text-v1` | 768 |
386
+ | `thenlper/gte-large` | 1024 |
387
+ | `WhereIsAI/UAE-Large-V1` | 1024 |
388
+
389
+ ### Generate embeddings
390
+
391
+ ```python
392
+ response = client.embeddings.create(
393
+ model="nomic-ai/nomic-embed-text-v1.5",
394
+ input=["Machine learning is a subset of AI.", "Deep learning uses neural networks."],
395
+ )
396
+ for i, emb in enumerate(response.data):
397
+ print(f"Embedding {i}: {len(emb.embedding)} dimensions")
398
+ ```
399
+
400
+ ## Model Selection
401
+
402
+ ### Popular serverless models
403
+
404
+ | Model | Model ID | Params | Context | Tier |
405
+ |-------|----------|--------|---------|------|
406
+ | Llama 3.3 70B Instruct | `accounts/fireworks/models/llama-v3p3-70b-instruct` | 70B | 131K | >16B |
407
+ | Llama 3.2 11B Vision | `accounts/fireworks/models/llama-v3p2-11b-vision-instruct` | 11B | 128K | 4-16B |
408
+ | Llama 3.2 3B Instruct | `accounts/fireworks/models/llama-v3p2-3b-instruct` | 3B | 128K | <4B |
409
+ | Qwen 2.5 72B Instruct | `accounts/fireworks/models/qwen2p5-72b-instruct` | 72B | 32K | >16B |
410
+ | Qwen3 Coder 480B A35B | `accounts/fireworks/models/qwen3-coder-480b-a35b-instruct` | 480B (35B active) | 262K | MoE |
411
+ | DeepSeek V3 | `accounts/fireworks/models/deepseek-v3-0324` | 671B (37B active) | 164K | MoE |
412
+ | Mixtral 8x7B Instruct | `accounts/fireworks/models/mixtral-8x7b-instruct` | 46B (12B active) | 32K | MoE 0-56B |
413
+ | Mixtral 8x22B Instruct | `accounts/fireworks/models/mixtral-8x22b-instruct` | 141B (39B active) | 65K | MoE 56-176B |
414
+
415
+ ### Serverless pricing by tier
416
+
417
+ | Tier | Price per 1M tokens |
418
+ |------|---------------------|
419
+ | < 4B params | $0.10 |
420
+ | 4B - 16B params | $0.20 |
421
+ | > 16B params | $0.90 |
422
+ | MoE 0 - 56B params | $0.50 |
423
+ | MoE 56B - 176B params | $1.20 |
424
+
425
+ ### Model selection guide
426
+
427
+ | Use Case | Recommended Model |
428
+ |----------|-------------------|
429
+ | General chat / instruction following | `llama-v3p3-70b-instruct` |
430
+ | Code generation | `qwen3-coder-480b-a35b-instruct` |
431
+ | Vision / multimodal | `llama-v3p2-11b-vision-instruct` |
432
+ | Cost-sensitive workloads | `llama-v3p2-3b-instruct` |
433
+ | Reasoning / complex tasks | `deepseek-v3-0324` |
434
+ | Fast MoE inference | `mixtral-8x7b-instruct` |
435
+
436
+ ## CLI (firectl)
437
+
438
+ ### Installation
439
+
440
+ ```bash
441
+ # macOS / Linux (Homebrew)
442
+ brew tap fw-ai/firectl && brew install firectl
443
+
444
+ # Install script
445
+ curl -sSL https://cli.fireworks.ai/install.sh | bash
446
+
447
+ # Windows (Chocolatey)
448
+ choco install firectl
449
+
450
+ # Verify
451
+ firectl version
452
+
453
+ # Upgrade
454
+ firectl upgrade
455
+ ```
456
+
457
+ ### Authentication
458
+
459
+ ```bash
460
+ firectl signin # Interactive login
461
+ firectl whoami # Show current account
462
+ ```
463
+
464
+ ### Model management
465
+
466
+ ```bash
467
+ # Upload a custom model
468
+ firectl model create my-model /path/to/model/weights
469
+
470
+ # List models
471
+ firectl model list
472
+
473
+ # Get model details
474
+ firectl model get accounts/{account_id}/models/my-model
475
+
476
+ # Delete model
477
+ firectl model delete accounts/{account_id}/models/my-model
478
+ ```
479
+
480
+ ### Deployment management
481
+
482
+ ```bash
483
+ # Create on-demand deployment
484
+ firectl deployment create accounts/fireworks/models/llama-v3p3-70b-instruct \
485
+ --display-name "prod-llama"
486
+
487
+ # List deployments
488
+ firectl deployment list
489
+
490
+ # Scale deployment
491
+ firectl deployment scale {deployment_id} \
492
+ --min-replica-count 2 --max-replica-count 8
493
+
494
+ # Delete deployment
495
+ firectl deployment delete {deployment_id}
496
+ ```
497
+
498
+ ### Fine-tuning via CLI
499
+
500
+ ```bash
501
+ # Create SFT job
502
+ firectl supervised-fine-tuning-job create my-sft-job \
503
+ --model accounts/fireworks/models/llama-v3p3-70b-instruct \
504
+ --dataset accounts/{account_id}/datasets/my-dataset
505
+
506
+ # Create RL fine-tuning job
507
+ firectl reinforcement-fine-tuning-job create my-rl-job \
508
+ --base-model accounts/fireworks/models/llama-v3p3-70b-instruct \
509
+ --reward-model accounts/{account_id}/models/my-reward-model
510
+
511
+ # Monitor jobs
512
+ firectl fine-tuning-job list
513
+ firectl fine-tuning-job get my-sft-job
514
+
515
+ # Stop / resume
516
+ firectl fine-tuning-job stop my-sft-job
517
+ firectl fine-tuning-job resume my-sft-job
518
+ ```
519
+
520
+ ## OpenAI Compatibility
521
+
522
+ Fireworks AI is a drop-in replacement for the OpenAI Python SDK. Change `base_url` and `api_key` -- all existing code works unchanged.
523
+
524
+ ### Using the OpenAI SDK
525
+
526
+ ```python
527
+ from openai import OpenAI
528
+
529
+ client = OpenAI(
530
+ base_url="https://api.fireworks.ai/inference/v1",
531
+ api_key=os.environ["FIREWORKS_API_KEY"],
532
+ )
533
+
534
+ # Chat completions -- same API as OpenAI
535
+ response = client.chat.completions.create(
536
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
537
+ messages=[{"role": "user", "content": "Hello!"}],
538
+ )
539
+
540
+ # Streaming -- same API
541
+ stream = client.chat.completions.create(
542
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
543
+ messages=[{"role": "user", "content": "Hello!"}],
544
+ stream=True,
545
+ )
546
+
547
+ # Embeddings -- same API
548
+ embeddings = client.embeddings.create(
549
+ model="nomic-ai/nomic-embed-text-v1.5",
550
+ input=["text to embed"],
551
+ )
552
+ ```
553
+
554
+ ### Environment variable approach
555
+
556
+ ```bash
557
+ export OPENAI_API_BASE="https://api.fireworks.ai/inference/v1"
558
+ export OPENAI_API_KEY="fw_..."
559
+ ```
560
+
561
+ Then use the OpenAI SDK without any code changes.
562
+
563
+ ### Fireworks-specific parameters
564
+
565
+ Fireworks adds `context_length_exceeded_behavior` to control what happens when `prompt + max_tokens` exceeds the model's context window:
566
+
567
+ ```python
568
+ response = client.chat.completions.create(
569
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
570
+ messages=[{"role": "user", "content": "..."}],
571
+ max_tokens=512,
572
+ extra_body={"context_length_exceeded_behavior": "truncate"}, # or "error"
573
+ )
574
+ ```
575
+
576
+ ### Using the native Fireworks SDK
577
+
578
+ ```python
579
+ import fireworks.client
580
+
581
+ fireworks.client.api_key = os.environ["FIREWORKS_API_KEY"]
582
+
583
+ response = fireworks.client.ChatCompletion.create(
584
+ model="accounts/fireworks/models/llama-v3p3-70b-instruct",
585
+ messages=[{"role": "user", "content": "Hello!"}],
586
+ )
587
+ print(response.choices[0].message.content)
588
+ ```
589
+
590
+ ## Cost Optimization
591
+
592
+ ### Prompt caching
593
+
594
+ Fireworks automatically caches repeated prompt prefixes. No configuration needed -- identical prefixes across requests reuse cached KV states, reducing both latency and cost.
595
+
596
+ Best practices for prompt caching:
597
+ - Place static system prompts at the beginning of messages
598
+ - Keep dynamic content at the end
599
+ - Use consistent system prompts across requests
600
+
601
+ ### Batch inference
602
+
603
+ Batch API provides up to 50% cost savings for non-latency-sensitive workloads:
604
+
605
+ ```python
606
+ # Prepare batch file (JSONL)
607
+ # Each line: {"custom_id": "req-1", "method": "POST", "url": "/v1/chat/completions", "body": {...}}
608
+
609
+ # Upload batch file
610
+ batch_file = client.files.create(
611
+ file=open("batch_requests.jsonl", "rb"),
612
+ purpose="batch",
613
+ )
614
+
615
+ # Create batch job
616
+ batch = client.batches.create(
617
+ input_file_id=batch_file.id,
618
+ endpoint="/v1/chat/completions",
619
+ completion_window="24h",
620
+ )
621
+ print(f"Batch ID: {batch.id}, Status: {batch.status}")
622
+
623
+ # Check status
624
+ batch_status = client.batches.retrieve(batch.id)
625
+ print(f"Status: {batch_status.status}")
626
+ ```
627
+
628
+ ### Cost reduction strategies
629
+
630
+ | Strategy | Savings | How |
631
+ |----------|---------|-----|
632
+ | Use smaller models | 50-90% | `llama-v3p2-3b-instruct` at $0.10/M tokens vs 70B at $0.90/M |
633
+ | Batch API | ~50% | Async processing for non-real-time workloads |
634
+ | Prompt caching | 20-40% | Consistent system prompts, static prefixes |
635
+ | MoE models | 30-50% | Mixtral/DeepSeek: large capacity, smaller active params |
636
+ | On-demand deployments | Variable | Predictable pricing at scale, no per-token markup |
637
+ | Reduce max_tokens | 10-30% | Set realistic output limits |
638
+
639
+ ## Common Issues
640
+
641
+ | Problem | Solution |
642
+ |---------|----------|
643
+ | `401 Unauthorized` | Check `FIREWORKS_API_KEY` is set and valid. Get key from https://fireworks.ai/api-keys |
644
+ | `Model not found` | Use full model ID: `accounts/fireworks/models/{model_name}` |
645
+ | `Context length exceeded` | Reduce input or set `context_length_exceeded_behavior: "truncate"` |
646
+ | Rate limited (serverless) | Switch to on-demand deployment for no rate limits |
647
+ | Slow cold start on deployment | Set `minReplicaCount >= 1` to keep replicas warm |
648
+ | Fine-tuning job stuck | Check dataset format matches expected JSONL schema. Use `firectl fine-tuning-job get` |
649
+ | Tool calls not working | Use models that support function calling (Llama 3.3, Qwen, DeepSeek V3) |
650
+ | JSON mode returns invalid JSON | Use `response_format` with explicit schema for strict enforcement |
651
+ | Streaming usage stats missing | Upgrade `openai` SDK to >= 1.6.1. Usage is in the final stream chunk |
652
+ | Deployment not scaling | Check `maxReplicaCount` is set high enough. Review deployment shape |
653
+
654
+ ## Resources
655
+
656
+ - **Documentation**: https://docs.fireworks.ai
657
+ - **API Reference**: https://docs.fireworks.ai/api-reference/introduction
658
+ - **Dashboard**: https://fireworks.ai/dashboard
659
+ - **Model Catalog**: https://fireworks.ai/models
660
+ - **Pricing**: https://fireworks.ai/pricing
661
+ - **firectl CLI**: https://docs.fireworks.ai/tools-sdks/firectl/firectl
662
+ - **OpenAI Compatibility**: https://docs.fireworks.ai/tools-sdks/openai-compatibility
663
+ - **Fine-Tuning Guide**: https://docs.fireworks.ai/fine-tuning/fine-tuning-models
664
+ - **Cookbook (GitHub)**: https://github.com/fw-ai/cookbook
665
+ - **Status Page**: https://status.fireworks.ai