(Áöµð³ÝÄÚ¸®¾Æ=ÀåÀ¯¹Ì ±âÀÚ)±¸±ÛÀÌ »ý¼ºÇü ÀΰøÁö´É(AI) ¿î¿µÀÇ ÇÙ½É º´¸ñÀ¸·Î ²ÅÇô¿Â '¸Þ¸ð¸® ¹®Á¦'¸¦ ¼ÒÇÁÆ®¿þ¾î ¹æ½ÄÀ¸·Î Ç®¾î³»´Â ±â¼úÀ» °ø°³ÇÏ¸é¼ AI ÀÎÇÁ¶ó °æÀïÀÇ ¹æÇâÀÌ ¹Ù²î°í ÀÖ´Ù. ¸ðµ¨ ±Ô¸ð È®´ë Áß½ÉÀÌ´ø ±âÁ¸ °æÀï ±¸µµ°¡ ½ÇÇà È¿À²°ú ¸Þ¸ð¸® ÃÖÀûÈ Áß½ÉÀ¸·Î À̵¿Çϰí ÀÖ´Ù´Â ºÐ¼®ÀÌ ³ª¿Â´Ù.
27ÀÏ ¾÷°è¿¡ µû¸£¸é ÃÖ±Ù ´ë±Ô¸ð¾ð¾î¸ðµ¨(LLM) ¿î¿µ¿¡¼´Â ¿¬»ê ¼º´Éº¸´Ù ¸Þ¸ð¸® ó¸® È¿À²ÀÌ Àüü ¼º´ÉÀ» Á¿ìÇÏ´Â »ç·Ê°¡ ´Ã°í ÀÖ´Ù. LLMÀº ´äº¯ »ý¼º °úÁ¤¿¡¼ ÀÌÀü Á¤º¸¸¦ ¹Ýº¹ÀûÀ¸·Î ÂüÁ¶ÇÏ´Â ±¸Á¶¸¦ °®°í ÀÖ¾î?µ¥ÀÌÅÍ Á¢±Ù °úÁ¤¿¡¼ ¹ß»ýÇÏ´Â Áö¿¬ÀÌ ¼Óµµ¿Í ºñ¿ëÀ» µ¿½Ã¿¡ Á¦ÇÑÇÏ´Â ¿äÀÎÀ¸·Î
¹Ù´ÙÀ̾߱⿹½Ã ÀÛ¿ëÇÑ´Ù.
ÇöÀç ¿£ºñµð¾Æ H100 µî Ãֽб׷¡ÇÈó¸®ÀåÄ¡(GPU) µµÀÔÀ¸·Î ¿¬»ê ¼º´ÉÀº Å©°Ô Çâ»óµÆÁö¸¸, ¸Þ¸ð¸® ´ë¿ªÆø°ú µ¥ÀÌÅÍ À̵¿ È¿À²Àº »ó´ëÀûÀ¸·Î Á¦ÇѵŠÀÖ´Ù. ½ÇÁ¦ ¼ºñ½º ȯ°æ¿¡¼´Â GPU ¿¬»êº¸´Ù ¸Þ¸ð¸® Á¢±ÙÀÌ º´¸ñÀ¸·Î ÀÛ¿ëÇÏ´Â °æ¿ì°¡ ÀûÁö ¾Ê´Ù.
¸±°ÔÀÓ»çÀÌÆ®Ãßõ (À̹ÌÁö Á¦ÀÛ=êGPT)
ÀÌ °°Àº È帧 ¼Ó¿¡¼ AI Ãß·Ð ½Ã½ºÅÛÀ» ±¸¼ºÇÏ´Â ±â¼ú ±¸Á¶¿¡ ´ëÇÑ ÀÌÇØµµ Áß¿äÇØÁö°í ÀÖ´Ù. AI Ãß·ÐÀº ¸ðµ¨, ¸Þ¸ð¸® ±¸Á¶, ½ÇÇà ¼ÒÇÁÆ®¿þ¾î, Çϵå¿þ¾î°¡ ´Ü°èÀûÀ¸·Î °áÇÕµÈ ÇüÅ·ΠÀÛµ¿ÇÑ´Ù.
¿ì¼± ¸ðµ¨Àº ¿¬»ê °úÁ¤¿¡¼ »ý¼ºµÈ Á¤º¸¸¦ ¸Þ¸ð¸®¿¡ ÀúÀåÇϰí ÀÌ
¾ß¸¶Åä°ÔÀÓ ¸¦ ¹Ýº¹ÀûÀ¸·Î ÂüÁ¶ÇÑ´Ù. ÀÌ °úÁ¤¿¡¼ ¸Þ¸ð¸® »ç¿ë·®ÀÌ ±Þ°ÝÈ÷ Áõ°¡ÇÏ¸ç º´¸ñÀÌ ¹ß»ýÇÑ´Ù.
À̸¦ ÇØ°áÇϱâ À§ÇÑ Á¢±ÙÀÌ ¸Þ¸ð¸® ¾ÐÃà ±â¼ú·Î, µ¥ÀÌÅÍ Ç¥ÇöÀ» ÁÙÀÌ´Â ¾çÀÚÈ(Quantization) ¹æ½Ä°ú µ¥ÀÌÅÍ ±¸Á¶¸¦ È¿À²ÀûÀ¸·Î ÀÎÄÚµùÇÏ´Â ¹æ½ÄÀÌ ÇÔ²² ¹ßÀüÇϰí ÀÖ´Ù.
ÀÌ °¡¿îµ¥ ±¸±ÛÀÌ Áö³ 24ÀÏ °ø°³ÇÑ Åͺ¸ÄöÆ®(TurboQua
Ȳ±Ý¼º°ÔÀÓ´Ù¿î·Îµå nt)´Â µ¥ÀÌÅÍ Ç¥Çö ¹æ½ÄÀ» À籸¼ºÇÏ´Â ¾çÀÚÈ ±â¹Ý Á¢±ÙÀ¸·Î, ¸Þ¸ð¸® »ç¿ë·®À» ÁÙÀ̸鼵µ Á¤È®µµ¸¦ À¯ÁöÇÏ´Â µ¥ ÃÊÁ¡À» ¸ÂÃá?±â¼ú·Î Æò°¡¹Þ´Â´Ù.
¿£ºñµð¾Æ ¿ª½Ã °°Àº ¹®Á¦¸¦ µÎ°í ´Ù¸¥ Á¢±ÙÀ» ½ÃµµÇϰí ÀÖ´Ù. ƯÈ÷ ÃÖ±Ù¿¡´Â KV ij½Ã¸¦ È¿À²ÀûÀ¸·Î ÀúÀåÇϱâ À§ÇÑ 'KV ij½Ã Æ®·£½ºÆû ÄÚµù(KV Cache Transform Coding)' ±â¹Ý ±â
¹Ù´ÙÀ̾߱â¸ð¹ÙÀÏ ¼úÀ» ¾Õ¼¼¿ì°í ÀÖ´Ù. ÀÌ´Â µ¥ÀÌÅ͸¦ ´Ü¼øÈ÷?Á¦°ÅÇÏ´Â ¹æ½ÄÀÌ ¾Æ´Ñ, Á¤º¸ ±¸Á¶¸¦ È¿À²ÀûÀ¸·Î ÀÎÄÚµùÇØ ÀúÀå È¿À²À» ³ôÀÌ´Â Á¢±Ù¿¡ °¡±õ´Ù. ´Ù¸¸ ¸ðµ¨º° Ư¼º¿¡ ¸ÂÃá º¸Á¤ °úÁ¤ÀÌ ÇÊ¿äÇÏ´Ù´Â Á¡¿¡¼ Àû¿ë ¹æ½Ä¿¡´Â Â÷À̰¡ ÀÖ´Ù.
µÎ ±â¼ú ¸ðµÎ ¸Þ¸ð¸® ¾ÐÃàÀ» ¸ñÇ¥·Î ÇÏÁö¸¸?Á¢±Ù ¹æ½Ä¿¡´Â Â÷À̰¡ ÀÖ´Ù. Åͺ¸ÄöÆ®°¡ ¾çÀÚȸ¦ ±â¹ÝÀ¸·Î Á¤È®µµ ¼Õ½ÇÀ» ÃÖ¼ÒÈÇÏ´Â µ¥ ÃÊÁ¡À» µÐ ¹Ý¸é, KV ij½Ã Æ®·£½ºÆû ÄÚµùÀº ÀÎÄÚµù È¿À²À» ³ô¿© ¾ÐÃà·üÀ» ²ø¾î¿Ã¸®´Â ±â¼ú·Î ºÐ¼®µÈ´Ù.
µÎ ±â¼úÀº ±âÁ¸ ¸Þ¸ð¸® ÃÖÀûÈ ±â¼úÀÇ ¿¬Àå¼±¿¡¼± ÀÇ¹Ì ÀÖ´Â ÁøÀüÀ¸·Î Æò°¡µÈ´Ù. KV ij½ÃÀÇ Á¤¹Ðµµ¸¦ ³·Ãß´Â ¾çÀÚÈ ±â¹ýÀº GPTQ, AWQ µî ¿ÀǼҽº Áø¿µ°ú ½ºÅ¸Æ®¾÷À» Áß½ÉÀ¸·Î È®»êµÅ ¿Ô°í, Á߿䵵°¡ ³·Àº ÅäÅ«À» ¼±ÅÃÀûÀ¸·Î Á¦°ÅÇÏ´Â ¹æ½ÄÀ̳ª ½½¶óÀ̵ù À©µµ¿ì ±â¹Ý ¸Þ¸ð¸® °ü¸® ±â¹ýµµ ÀϺΠ¸ðµ¨¿¡ Àû¿ëµÅ ¿Ô´Ù. ¶Ç ¸Þ¸ð¸® Á¢±ÙÀ» ÁÙÀÌ´Â ¾îÅÙ¼Ç ÃÖÀûÈ ±â¼úÀº µ¥ÀÌÅÍ Àü¼Û Ƚ¼ö¸¦ ÁÙ¿© ¼Óµµ¸¦ ³ôÀÌ´Â?Ç÷¡½Ã¾îÅÙ¼Ç(FlashAttention) µîÀ¸·Î ¹ßÀüÇϸç ÁÖ¿ä AI ±â¾÷°ú ¿¬±¸ Ä¿¹Â´ÏƼ¿¡¼ Ȱ¿ëµÇ°í ÀÖ´Ù.
¾÷°è °ü°èÀÚ´Â "¾çÀÚȳª ÅäÅ« ÇÁ·ç´× °°Àº ±â¹ýÀº ÀÌ¹Ì ³Î¸® ¾²À̰í ÀÖÁö¸¸, ½ÇÁ¦ ¼ºñ½º¿¡¼´Â Á¤È®µµ³ª ¾ÈÁ¤¼º ¹®Á¦ ¶§¹®¿¡ Àû¿ë ¹üÀ§°¡ Á¦ÇÑÀûÀÎ °æ¿ì°¡ ¸¹´Ù"¸ç "KV ij½Ã ÀÚü¸¦ ¾ÐÃà ´ë»óÀ¸·Î »ï´Â Á¢±ÙÀº ±¸Çö ³À̵µ´Â ³ôÁö¸¸, Á¦´ë·Î Àû¿ëµÇ¸é ü°¨ ¼º´ÉÀ» Å©°Ô ¹Ù²Ü ¼ö ÀÖ´Â ¿µ¿ª"À̶ó°í ¹àÇû´Ù.
¿£ºñµð¾ÆÀÇ ÃÖ½ÅÇü ·çºó GPU (»çÁø=¿£ºñµð¾Æ)
¸Þ¸ð¸® ¾ÐÃà°ú ´õºÒ¾î ¸ðµ¨ ½ÇÇà ¹æ½Ä ÀÚü¸¦ °³¼±ÇÏ·Á´Â ¼ÒÇÁÆ®¿þ¾î °æÀïµµ È®´ëµÇ°í ÀÖ´Ù. vLLM, ÅÙ¼RT-LLM(TensorRT-LLM)À» ºñ·ÔÇØ ¶ó¸¶(llama.cpp) µî ´Ù¾çÇÑ Ãß·Ð ¿£ÁøµéÀÌ µîÀåÇÏ¸ç ¿äû ó¸® ¹æ½Ä°ú ¸Þ¸ð¸® °ü¸® È¿À²À» ³ôÀÌ´Â ¹æÇâÀ¸·Î ¹ßÀüÇϰí ÀÖ´Ù.
ƯÈ÷ vLLMÀº ¹Ì±¹ UC¹öŬ¸® ¿¬±¸ÁøÀÌ ÁÖµµÇØ °³¹ßÇÑ ¿ÀǼҽº Ãß·Ð ¿£ÁøÀ¸·Î, ¿äûÀ» È¿À²ÀûÀ¸·Î ¹¾î ó¸®ÇÏ°í ÆäÀÌÁöµå¾îÅÙ¼Ç(PagedAttention) ±¸Á¶¸¦ ÅëÇØ ¸Þ¸ð¸®¸¦ µ¿ÀûÀ¸·Î °ü¸®ÇÏ´Â ¹æ½ÄÀ¸·Î ó¸® È¿À²À» ³ôÀδÙ. ¿£ºñµð¾Æ°¡ °³¹ßÇÑ ÅÙ¼RT-LLM(TensorRT-LLM) ¿ª½Ã GPU ¿¬»êÀ» ÃÖÀûÈÇØ Ãß·Ð ¼Óµµ¸¦ °³¼±ÇÏ´Â ¼ÒÇÁÆ®¿þ¾î·Î, µ¥ÀÌÅͼ¾ÅÍ È¯°æ¿¡¼ ³Î¸® Ȱ¿ëµÇ°í ÀÖ´Ù.
Ãß·Ð ¿£ÁøÀº ¸ðµ¨ ÀÚü¸¦ º¯°æÇÏÁö ¾Ê°íµµ ½ÇÇà ¹æ½Ä¸¸À¸·Î ¼º´ÉÀ» °³¼±ÇÒ ¼ö ÀÖ´Ù. µ¿ÀÏÇÑ ¸ðµ¨ÀÌ¶óµµ ¾î¶² ½ÇÇà ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏ´À³Ä¿¡ µû¶ó ó¸® ¼Óµµ¿Í ºñ¿ëÀÌ ´Þ¶óÁö´Â ±¸Á¶´Ù.
¾÷°è °ü°èÀÚ´Â "°°Àº ¸ðµ¨ÀÌ¶óµµ vLLMÀ̳ª ÅÙ¼RT °°Àº Ãß·Ð ¿£Áø ¼³Á¤¿¡ µû¶ó 󸮷® Â÷À̰¡ Å©°Ô ³´Ù"¸ç "½ÇÁ¦ ¼ºñ½º¿¡¼´Â ¸ðµ¨º¸´Ù ½ÇÇà ½ºÅÃÀÌ ¼º´ÉÀ» Á¿ìÇÏ´Â °æ¿ìµµ ÀûÁö ¾Ê´Ù"°í ¼³¸íÇß´Ù.
¸Þ¸ð¸® ¾ÐÃà ±â¼ú°ú Ãß·Ð ¿£ÁøÀÌ °áÇÕµÈ µÚ ÃÖÁ¾ ¿¬»êÀº GPU¿¡¼ ¼öÇàµÈ´Ù. ƯÈ÷ ÃֽŠGPU ȯ°æ¿¡¼´Â ¿¬»ê ¼º´Éº¸´Ù ¸Þ¸ð¸® Ȱ¿ë È¿À²ÀÌ Àüü ¼º´ÉÀ» Á¿ìÇÏ´Â °æ¿ì°¡ ¸¹¾ÆÁö¸é¼ ¼ÒÇÁÆ®¿þ¾î ±â¹Ý ÃÖÀûÈÀÇ Á߿伺ÀÌ ´õ¿í Ä¿Áö°í ÀÖ´Ù.
ÀÌ¿Í ÇÔ²² AI °æÀïÀÇ ¹æÇâµµ º¯ÈÇϰí ÀÖ´Ù. ±×µ¿¾È »ý¼ºÇü AI´Â ´õ ¸¹Àº µ¥ÀÌÅ͸¦ ÇнÀÇÏ°í ´õ Å« ¸ðµ¨À» ±¸ÃàÇÏ´Â µ¥ ÁýÁßÇØ ¿ÔÁö¸¸, ÃÖ±Ù¿¡´Â µ¿ÀÏÇÑ ¸ðµ¨À» ¾ó¸¶³ª ºü¸£°í ºñ¿ë È¿À²ÀûÀ¸·Î ¿î¿µÇÒ ¼ö ÀÖ´ÂÁö°¡ ÇÙ½É °æÀï·ÂÀ¸·Î ºÎ»óÇϰí ÀÖ´Ù.
¾÷°è °ü°èÀÚ´Â "´ë±Ô¸ð ¼ºñ½º¿¡¼´Â ¸ðµ¨ ¼º´Éº¸´Ù Ãß·Ð È¿À²ÀÌ ºñ¿ë ±¸Á¶¸¦ Á¿ìÇÏ´Â °æ¿ì°¡ ´õ ¸¹´Ù"¸ç "¸Þ¸ð¸® ±¸Á¶¿Í Ãß·Ð ¿£ÁøÀ» ÇÔ²² ÃÖÀûÈÇÏÁö ¾ÊÀ¸¸é GPU¸¦ ´Ã·Áµµ ¼öÀͼºÀ» ¸ÂÃ߱⠾î·Á¿î ´Ü°è¿¡ µé¾î¼¹´Ù"°í ¸»Çß´Ù.
ÀåÀ¯¹Ì ±âÀÚ(sweet@zdnet.co.kr)