Firecracker ແມ່ນ virtual machine monitor (VMM) ແບບ open-source ທີ່ພັດທະນາໂດຍ AWS ສາມາດເປີດໃຊ້ງານ microVM ທີ່ມີນ້ຳໜັກເບົາພາຍໃນເວລາ 125 millisecond ຫຼືໜ້ອຍກວ່ານັ້ນ ໂດຍຮອງຮັບທັງຄວາມໜາແໜ້ນໃນລະດັບດຽວກັບ container ແລະ ການແຍກດ້ານຄວາມປອດໄພໃນລະດັບດຽວກັບ VM ໃນເວລາດຽວກັນ.
Firecracker ໄດ້ຖືກພັດທະນາຂຶ້ນເພື່ອເປັນໂຄງສ້າງພື້ນຖານການປະຕິບັດງານຂອງ AWS Lambda ແລະ AWS Fargate ໂດຍເຮັດວຽກຢູ່ເທິງ KVM (Kernel-based Virtual Machine) ຂອງ Linux. VM ແບບດັ້ງເດີມຕ້ອງໃຊ້ເວລາຫຼາຍສິບວິນາທີໃນການເລີ່ມຕົ້ນ ເນື່ອງຈາກຕ້ອງໂຫຼດ OS image ທັງໝົດ, ແຕ່ Firecracker ໄດ້ຕັດການຈຳລອງ device ທີ່ບໍ່ຈຳເປັນອອກຢ່າງທົ່ວຖ້ວນ ແລະ ຈຳລອງສະເພາະ serial port, network ແລະ block storage ເທົ່ານັ້ນ. ດ້ວຍການຕັດສິນໃຈທີ່ຊັດເຈນນີ້, memory footprint ຈຶ່ງຕ່ຳກວ່າ 5 MB ແລະ ເວລາເລີ່ມຕົ້ນຖືກຄວບຄຸມໃຫ້ຢູ່ທີ່ 125 ms ຫຼືຕ່ຳກວ່ານັ້ນ.
container (ເຊັ່ນ Docker) ໃຊ້ kernel ຂອງ host OS ຮ່ວມກັນ, ດັ່ງນັ້ນຫາກພົບຊ່ອງໂຫວ່ຂອງ kernel ກໍ່ມີຄວາມສ່ຽງທີ່ການແຍກລະຫວ່າງ tenant ຈະຖືກທຳລາຍ. Firecracker ຈັດສັນ kernel ທີ່ເປັນເອກະລາດໃຫ້ແຕ່ລະ workload, ຈຶ່ງສາມາດຮັກສາການແຍກທີ່ເຂັ້ມແຂງໄດ້ແມ້ໃນສະພາບແວດລ້ອມ multi-tenant. ໃນທາງກົງກັນຂ້າມ, ຈຸດທີ່ຄວາມໄວໃນການເລີ່ມຕົ້ນໃກ້ຄຽງກັບ container ຖືເປັນຈຸດສ້າງຄວາມແຕກຕ່າງທີ່ໃຫຍ່ທີ່ສຸດເມື່ອທຽບກັບ VM ແບບດັ້ງເດີມ.
ຕົວຢ່າງການໃຊ້ງານທີ່ຄຸ້ນເຄີຍທີ່ສຸດຄື AWS Lambda. ທຸກຄັ້ງທີ່ຜູ້ໃຊ້ເອີ້ນໃຊ້ function, microVM ຂອງ Firecracker ຈະຖືກເລີ່ມຕົ້ນ ແລະ ຈະຖືກທຳລາຍທັນທີທີ່ການປະຕິບັດງານສຳເລັດ. ແມ່ນແຕ່ຈະໃຫ້ microVM ຫຼາຍພັນໂຕຢູ່ຮ່ວມກັນໃນ physical server ດຽວ, memory space ແລະ file system ຂອງແຕ່ລະໂຕກໍ່ຍັງຖືກແຍກອອກຈາກກັນຢ່າງສົມບູນ.
ນອກຈາກ serverless ແລ້ວ, ການນຳໃຊ້ຍັງຂະຫຍາຍຕົວໃນດ້ານການໃຊ້ VM ທີ່ສະອາດແບບໃຊ້ແລ້ວທິ້ງສຳລັບແຕ່ລະ build ໃນ CI/CD pipeline, ລວມທັງກໍລະນີການແບ່ງ hardware resource ທີ່ຈຳກັດຢ່າງມີປະສິດທິພາບໃນ edge site. ເນື່ອງຈາກຖືກ implement ດ້ວຍ Rust ຈຶ່ງມີຄວາມປອດໄພຂອງ memory ສູງ ແລະ ໄດ້ຮັບການປະເມີນໃນດ້ານການເງິນ ແລະ ສາທາລະນະສຸກທີ່ມີຂໍ້ກຳນົດດ້ານຄວາມປອດໄພທີ່ເຂັ້ມງວດ.
Firecracker ບໍ່ແມ່ນ VM ທົ່ວໄປ. ບໍ່ຮອງຮັບ GPU passthrough ຫຼື ການສະແດງຜົນ GUI, ແລະ kernel ທີ່ຮອງຮັບກໍ່ຈຳກັດສະເພາະ Linux ເທົ່ານັ້ນ. ໃນກໍລະນີທີ່ຕ້ອງການເຮັດວຽກ Windows workload ຫຼື ຕ້ອງການການປະມວນຜົນ inference ດ້ວຍ GPU, QEMU/KVM ຫຼື dedicated instance ຍັງຄົງເປັນທາງເລືອກທີ່ຕ້ອງພິຈາລະນາ.


ການປັບຂະໜາດໃນເວລາອະນຸມານ (Inference-time Scaling) ແມ່ນເຕັກນິກທີ່ເພີ່ມຫຼືຫຼຸດປະລິມານການຄຳນວນໃນຂັ້ນຕອນການອະນຸມານຂອງໂມເດລຢ່າງເໝາະສົມ ໂດຍໃຊ້ "ຂັ້ນຕອນການຄິດ" ຫຼາຍຂຶ້ນສຳລັບບັນຫາທີ່ຍາກ ແລະ ຕອບທັນທີສຳລັບບັນຫາທີ່ງ່າຍ.

PoC (Proof of Concept, ການພິສູດແນວຄິດ) ແມ່ນຂະບວນການກວດສອບຄວາມເປັນໄປໄດ້ຂອງເຕັກໂນໂລຊີ ຫຼື ແນວຄິດໃໝ່ໃນຂະໜາດນ້ອຍ. ມັນຖືກດຳເນີນການເພື່ອເຮັດໃຫ້ຄວາມສ່ຽງເປັນທີ່ເຫັນໄດ້ຊັດເຈນກ່ອນທີ່ຈະລົງທຶນໃນການພັດທະນາຢ່າງເຕັມຮູບແບບ ແລະ ເພື່ອຕັດສິນວ່າ "ວິທີການນີ້ສາມາດບັນລຸເປົ້າໝາຍໄດ້ຫຼືບໍ່".

ການປັບແຕ່ງລະອຽດ (Fine-Tuning) ແມ່ນຂະບວນການທີ່ນຳເອົາຂໍ້ມູນການຮຽນຮູ້ເພີ່ມເຕີມມາໃຫ້ກັບໂມເດລ Machine Learning ທີ່ຜ່ານການຮຽນຮູ້ລ່ວງໜ້າແລ້ວ ເພື່ອປັບໃຫ້ເໝາະສົມກັບວຽກງານ ຫຼື ໂດເມນສະເພາະໃດໜຶ່ງ.
