āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļšāđ€āļĢāļē

LLM āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļ—āļĩāđˆāļ—āļĢāļ‡āļžāļĨāļąāļ‡āļ—āļĩāđˆāļŠāļļāļ”: Meta LLAMA 3.1-405B

āļ›āļąāļāļāļēāļ›āļĢāļ°āļ”āļīāļĐāļāđŒ

LLM āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļ—āļĩāđˆāļ—āļĢāļ‡āļžāļĨāļąāļ‡āļ—āļĩāđˆāļŠāļļāļ”: Meta LLAMA 3.1-405B

mm

āļāļēāļĢāļ•āļĩāļžāļīāļĄāļžāđŒ

 on

LLM āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļ—āļĩāđˆāļ—āļĢāļ‡āļžāļĨāļąāļ‡āļ—āļĩāđˆāļŠāļļāļ”: Meta LLAMA 405B

āļĨāļēāļĄāļ° 3.1-405Bāļ‹āļķāđˆāļ‡āļžāļąāļ’āļ™āļēāđ‚āļ”āļĒ Meta AI āđāļŠāļ”āļ‡āļ–āļķāļ‡āļāļēāļĢāļāđ‰āļēāļ§āļāļĢāļ°āđ‚āļ”āļ”āļ„āļĢāļąāđ‰āļ‡āļŠāļģāļ„āļąāļāđƒāļ™āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠ āļ”āđ‰āļ§āļĒāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ 405 āļžāļąāļ™āļĨāđ‰āļēāļ™āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ āļ–āļ·āļ­āđ€āļ›āđ‡āļ™āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ—āļĩāđˆāđ€āļ›āļīāļ”āđ€āļœāļĒāļ•āđˆāļ­āļŠāļēāļ˜āļēāļĢāļ“āļ°āļ—āļĩāđˆāđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ”āļˆāļ™āļ–āļķāļ‡āļ›āļąāļˆāļˆāļļāļšāļąāļ™ āļ—āļąāļ”āđ€āļ—āļĩāļĒāļĄāđāļĨāļ°āđ€āļŦāļ™āļ·āļ­āļāļ§āđˆāļēāđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļāļĢāļĢāļĄāļŠāļīāļ—āļ˜āļīāđŒāļ‚āļąāđ‰āļ™āļŠāļđāļ‡āļšāļēāļ‡āļĢāļļāđˆāļ™āđƒāļ™āđ€āļāļ“āļ‘āđŒāļĄāļēāļ•āļĢāļāļēāļ™āļ•āđˆāļēāļ‡āđ†

āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļ—āļĩāđˆāļŠāļģāļ„āļąāļ:

  • 405 āļžāļąāļ™āļĨāđ‰āļēāļ™āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ
  • āļ„āļ§āļēāļĄāļĒāļēāļ§āļšāļĢāļīāļšāļ—āđ‚āļ—āđ€āļ„āđ‡āļ™ 128K
  • āļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļŦāļĨāļēāļĒāļ āļēāļĐāļē (8 āļ āļēāļĐāļē)
  • āļ›āļĢāļąāļšāļ„āļģāļŠāļąāđˆāļ‡āđāļĨāđ‰āļ§ āļĢāļļāđˆāļ™āļ—āļĩāđˆāļĄāļĩ
  • āđ€āļ›āļīāļ”āđāļŦāļĨāđˆāļ‡āļ—āļĩāđˆāļĄāļē āđ‚āļ”āļĒāļĄāļĩāđƒāļšāļ­āļ™āļļāļāļēāļ•āļ­āļ™āļļāļāļēāļ•

āļāļēāļĢāđ€āļ›āļīāļ”āļ•āļąāļ§āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāļ—āļĢāļ‡āļžāļĨāļąāļ‡āļ”āļąāļ‡āļāļĨāđˆāļēāļ§āđƒāļ™āđ‚āļ”āđ€āļĄāļ™āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāđ€āļ›āđ‡āļ™āļ•āļąāļ§āđ€āļ›āļĨāļĩāđˆāļĒāļ™āđ€āļāļĄ āļ—āļģāđƒāļŦāđ‰āđ€āļāļīāļ”āļ›āļĢāļ°āļŠāļēāļ˜āļīāļ›āđ„āļ•āļĒāđƒāļ™āļāļēāļĢāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ”āđ‰āļēāļ™ AI āļ—āļĩāđˆāļĨāđ‰āļģāļŠāļĄāļąāļĒ āđāļĨāļ°āļŠāđˆāļ‡āđ€āļŠāļĢāļīāļĄāļ™āļ§āļąāļ•āļāļĢāļĢāļĄāļ—āļąāđˆāļ§āļ—āļąāđ‰āļ‡āļ­āļļāļ•āļŠāļēāļŦāļāļĢāļĢāļĄ

āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāđāļšāļšāļˆāļģāļĨāļ­āļ‡āđāļĨāļ°āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄ

āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ”āđ‰āļ§āļĒāđ‚āļ—āđ€āļ„āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ­āļīāļ™āļžāļļāļ•āļ—āļĩāđˆāļ–āļđāļāđāļ›āļĨāļ‡āđ€āļ›āđ‡āļ™āļāļēāļĢāļāļąāļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™ āļāļēāļĢāļāļąāļ‡āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļˆāļ°āļŠāđˆāļ‡āļœāđˆāļēāļ™āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļāļēāļĢāđ€āļ­āļēāđƒāļˆāđƒāļŠāđˆāļ•āļ™āđ€āļ­āļ‡āđāļĨāļ°āļāļēāļĢāļŠāđˆāļ‡āļ•āđˆāļ­āļŦāļĨāļēāļĒāļŠāļąāđ‰āļ™ āļ—āļģāđƒāļŦāđ‰āđāļšāļšāļˆāļģāļĨāļ­āļ‡āļŠāļēāļĄāļēāļĢāļ–āļˆāļąāļšāļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđāļĨāļ°āļāļēāļĢāļžāļķāđˆāļ‡āļžāļēāļ āļēāļĒāđƒāļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāđ„āļ”āđ‰ āļˆāļēāļāļ™āļąāđ‰āļ™āļāļĨāđ„āļāļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāđāļšāļš autoregressive āļˆāļ°āļŠāļĢāđ‰āļēāļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāđ€āļ­āļēāļ•āđŒāļžāļļāļ• āļ‹āļķāđˆāļ‡āļˆāļ°āļ—āļģāđƒāļŦāđ‰āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāđ€āļŠāļĢāđ‡āļˆāļŠāļĄāļšāļđāļĢāļ“āđŒ

 

  1. āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāđāļšāļšāļāļĨāļļāđˆāļĄ (GQA)

āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāđāļšāļšāļāļĨāļļāđˆāļĄ

āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāđāļšāļšāļāļĨāļļāđˆāļĄ

Llama 3.1 āđƒāļŠāđ‰ Grouped Query Attention āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ‹āļķāđˆāļ‡āđ„āļĄāđˆāļ„āļĢāļ­āļšāļ„āļĨāļļāļĄāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđƒāļ™āļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļšāļ„āļĢāļąāđ‰āļ‡āļāđˆāļ­āļ™ āļĄāļēāļŠāļģāļĢāļ§āļˆāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāļāļąāļ™āļ”āļĩāļāļ§āđˆāļē:

Grouped Query Attention (GQA) āđ€āļ›āđ‡āļ™āļ•āļąāļ§āđāļ›āļĢāļŦāļ™āļķāđˆāļ‡āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļšāļšāļŦāļĨāļēāļĒāļŦāļąāļ§āļ‹āļķāđˆāļ‡āļĄāļĩāļˆāļļāļ”āļĄāļļāđˆāļ‡āļŦāļĄāļēāļĒāđ€āļžāļ·āđˆāļ­āļĨāļ”āļ•āđ‰āļ™āļ—āļļāļ™āļāļēāļĢāļ„āļģāļ™āļ§āļ“āđāļĨāļ°āļāļēāļĢāđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāđƒāļ™āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™ āđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°āļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡āļŠāļģāļŦāļĢāļąāļšāļĨāļģāļ”āļąāļšāļ—āļĩāđˆāļĒāļēāļ§ āđƒāļ™āļĢāļļāđˆāļ™ Llama 3.1 405B āļ™āļąāđ‰āļ™ GQA āļˆāļ°āļ–āļđāļāļ™āļģāđ„āļ›āđƒāļŠāđ‰āļāļąāļšāļŠāđˆāļ§āļ™āļŦāļąāļ§āļ‚āļ­āļ‡āļ„āļĩāļĒāđŒ-āļ„āđˆāļē 8 āļĢāļēāļĒāļāļēāļĢ

āļ™āļĩāđˆāļ„āļ·āļ­āļ§āļīāļ˜āļĩāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ‚āļ­āļ‡ GQA:

  1. āđāļ—āļ™āļ—āļĩāđˆāļˆāļ°āļĄāļĩāļāļēāļĢāļ„āļēāļ”āļāļēāļĢāļ“āđŒāļ„āļĩāļĒāđŒāđāļĨāļ°āļ„āđˆāļēāđāļĒāļāļāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļŠāđˆāļ§āļ™āļŦāļąāļ§āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļ•āđˆāļĨāļ°āļŠāđˆāļ§āļ™ GQA āļˆāļ°āļˆāļąāļ”āļāļĨāļļāđˆāļĄāļŠāđˆāļ§āļ™āļŦāļąāļ§āļ‚āļ­āļ‡āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢāđ€āļžāļ·āđˆāļ­āđƒāļŠāđ‰āļ„āļĩāļĒāđŒāđāļĨāļ°āļŠāđˆāļ§āļ™āļŦāļąāļ§āļ‚āļ­āļ‡āļ„āđˆāļēāđ€āļ”āļĩāļĒāļ§āļāļąāļ™āļĢāđˆāļ§āļĄāļāļąāļ™
  2. āļāļēāļĢāļˆāļąāļ”āļāļĨāļļāđˆāļĄāļ™āļĩāđ‰āļˆāļ°āļŠāđˆāļ§āļĒāļĨāļ”āļˆāļģāļ™āļ§āļ™āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļēāļ“āļāļēāļĢāļ„āļĩāļĒāđŒāđāļĨāļ°āļ„āđˆāļēāļĨāļ‡āļ­āļĒāđˆāļēāļ‡āļĄāļēāļ āļŠāđˆāļ‡āļœāļĨāđƒāļŦāđ‰āđ‚āļĄāđ€āļ”āļĨāļĄāļĩāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāļĨāļ‡āđāļĨāļ°āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™
  3. āļāļēāļĢāļ„āļģāļ™āļ§āļ“āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāļŠāļēāļĄāļēāļĢāļ–āđāļŠāļ”āļ‡āđ„āļ”āđ‰āļ”āļąāļ‡āļ™āļĩāđ‰:
Attention(Q, K, V) = softmax(QK^T / sqrt(d_k))V

āđ‚āļ”āļĒāļ—āļĩāđˆ Q āļ–āļđāļāļˆāļąāļ”āļāļĨāļļāđˆāļĄāđ€āļ›āđ‡āļ™āļāļĨāļļāđˆāļĄ g āđāļĨāļ° K āđāļĨāļ° V āļĄāļĩāļŦāļąāļ§āļ™āđ‰āļ­āļĒāļāļ§āđˆāļē Q

āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ‚āļ­āļ‡ GQA āđƒāļ™ Llama 3.1 405B āđ„āļ”āđ‰āđāļāđˆ:

  • āļĨāļ”āļĢāļ­āļĒāđ€āļ—āđ‰āļēāļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ: āļāļēāļĢāļ›āļĢāļ°āļĄāļēāļ“āļāļēāļĢāļ„āļĩāļĒāđŒāđāļĨāļ°āļ„āđˆāļēāļ—āļĩāđˆāļ™āđ‰āļ­āļĒāļĨāļ‡āļŦāļĄāļēāļĒāļ„āļ§āļēāļĄāļ§āđˆāļēāļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļ™āđ‰āļ­āļĒāļĨāļ‡āđƒāļ™āļāļēāļĢāļˆāļąāļ”āđ€āļāđ‡āļšāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđ‚āļĄāđ€āļ”āļĨ
  • āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļ—āļĩāđˆāļĢāļ§āļ”āđ€āļĢāđ‡āļ§āļĒāļīāđˆāļ‡āļ‚āļķāđ‰āļ™: āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļāļēāļĢāļ„āļģāļ™āļ§āļ“āļ™āđ‰āļ­āļĒāļĨāļ‡āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ‰āļēāļĒāļ āļēāļžāļ„āļĩāļĒāđŒāđāļĨāļ°āļ„āđˆāļē āļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āđƒāļ™āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļˆāļķāļ‡āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāļ›āļĢāļļāļ‡
  • āļĢāļąāļāļĐāļēāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđ„āļ§āđ‰: āđāļĄāđ‰āļ§āđˆāļēāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļˆāļ°āļĨāļ”āļĨāļ‡ āđāļ•āđˆ GQA āļāđ‡āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļēāļŠāļēāļĄāļēāļĢāļ–āļĢāļąāļāļĐāļēāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ—āļĩāđˆāđ€āļ—āļĩāļĒāļšāđ€āļ„āļĩāļĒāļ‡āđ„āļ”āđ‰āļāļąāļšāļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāđāļšāļšāļŦāļĨāļēāļĒāļŦāļąāļ§āđāļšāļšāļĄāļēāļ•āļĢāļāļēāļ™āđƒāļ™āļ‡āļēāļ™āļ•āđˆāļēāļ‡āđ† āļĄāļēāļāļĄāļēāļĒ
  1. āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāđāļšāļšāļŠāļ­āļ‡āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āđ€āļžāļ·āđˆāļ­āļ‚āļĒāļēāļĒāļšāļĢāļīāļšāļ—

āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰āļāļĨāđˆāļēāļ§āļ–āļķāļ‡āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļŠāļ­āļ‡āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āđ„āļ”āđ‰āļŦāļ™āđ‰āļēāļ•āđˆāļēāļ‡āļšāļĢāļīāļšāļ—āđ‚āļ—āđ€āļ„āđ‡āļ™ 128K āļ™āļĩāđˆāđ€āļ›āđ‡āļ™āļŠāđˆāļ§āļ™āļŠāļģāļ„āļąāļāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡ Llama 3.1 405B:

āļ‚āļąāđ‰āļ™āļ—āļĩāđˆ 1: āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāđ€āļšāļ·āđ‰āļ­āļ‡āļ•āđ‰āļ™āđ€āļšāļ·āđ‰āļ­āļ‡āļ•āđ‰āļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ‚āļ—āđ€āļ„āđ‡āļ™ 8K

  • āđ‚āļĄāđ€āļ”āļĨāļ™āļĩāđ‰āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļāļķāļāļāļ™āđ€āļ›āđ‡āļ™āļ„āļĢāļąāđ‰āļ‡āđāļĢāļāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļĨāļģāļ”āļąāļšāđ‚āļ—āđ€āļ„āđ‡āļ™āļŠāļđāļ‡āļŠāļļāļ” 8K
  • āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ™āļĩāđ‰āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āđ‚āļĄāđ€āļ”āļĨāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāļ āļēāļĐāļēāļ—āļąāđˆāļ§āđ„āļ›āđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡

āļ‚āļąāđ‰āļ™āļ—āļĩāđˆ 2: āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āđ€āļžāļ·āđˆāļ­āļāļēāļĢāļ‚āļĒāļēāļĒāļšāļĢāļīāļšāļ—

  • āļŦāļĨāļąāļ‡āļˆāļēāļāļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāđ€āļšāļ·āđ‰āļ­āļ‡āļ•āđ‰āļ™ āđ‚āļĄāđ€āļ”āļĨāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āđ€āļžāļ·āđˆāļ­āđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāļĒāļēāļ§āļšāļĢāļīāļšāļ—āđ€āļ›āđ‡āļ™āđ‚āļ—āđ€āļ„āđ‡āļ™ 128 āļĢāļēāļĒāļāļēāļĢ
  • āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ™āļĩāđ‰āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāđāļœāļ™āļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāļ—āļĩāđˆāļ­āļ­āļāđāļšāļšāļĄāļēāļ­āļĒāđˆāļēāļ‡āļĢāļ°āļĄāļąāļ”āļĢāļ°āļ§āļąāļ‡ āđ€āļžāļ·āđˆāļ­āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āđāļšāļšāļˆāļģāļĨāļ­āļ‡āļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāļļāļ›āļĨāļģāļ”āļąāļšāļ—āļĩāđˆāļĒāļēāļ§āļ‚āļķāđ‰āļ™āđ„āļ”āđ‰ āđ‚āļ”āļĒāđ„āļĄāđˆāļŠāļđāļāđ€āļŠāļĩāļĒāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļāļąāļšāļšāļĢāļīāļšāļ—āļ—āļĩāđˆāļŠāļąāđ‰āļ™āļĨāļ‡
  1. āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš

āđāļĄāđ‰āļ§āđˆāļēāļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļāđˆāļ­āļ™āļŦāļ™āđ‰āļēāļ™āļĩāđ‰āļˆāļ°āđ€āļ™āđ‰āļ™āđ„āļ›āļ—āļĩāđˆāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš āđāļ•āđˆāđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āļ‚āļĒāļēāļĒāļ§āļīāļ˜āļĩāļ—āļĩāđˆ Llama 3.1 405B āđƒāļŠāđ‰āļ‡āļēāļ™āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āđ„āļ”āđ‰:

āļ§āļīāļ˜āļĩāļāļēāļĢāļˆāļąāļ”āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļš:

  • Llama 3.1 405B āđƒāļŠāđ‰āļ•āļąāļ§āđ€āļ‚āđ‰āļēāļĢāļŦāļąāļŠāđāļĒāļāļāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™ (āđ€āļŠāđˆāļ™ āļĢāļđāļ›āļ āļēāļž āđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”)
  • āļ•āļąāļ§āđ€āļ‚āđ‰āļēāļĢāļŦāļąāļŠāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļˆāļ°āđāļ›āļĨāļ‡āļ­āļīāļ™āļžāļļāļ•āļˆāļēāļāļĢāļđāļ›āđāļšāļšāļ•āđˆāļēāļ‡āđ† āđƒāļŦāđ‰āļāļĨāļēāļĒāđ€āļ›āđ‡āļ™āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļāļąāļ‡āļ—āļĩāđˆāđƒāļŠāđ‰āļĢāđˆāļ§āļĄāļāļąāļ™āļ‹āļķāđˆāļ‡āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļŠāļēāļĄāļēāļĢāļ–āđ€āļ‚āđ‰āļēāđƒāļˆāđ„āļ”āđ‰

āļšāļđāļĢāļ“āļēāļāļēāļĢāļāļąāļšāļĢāļđāļ›āđāļšāļšāļ āļēāļĐāļē:

  • āļˆāļēāļāļ™āļąāđ‰āļ™āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļˆāļēāļāļ•āļąāļ§āđ€āļ‚āđ‰āļēāļĢāļŦāļąāļŠāļžāļīāđ€āļĻāļĐāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļˆāļ°āļ–āļđāļāļ›āđ‰āļ­āļ™āđ€āļ‚āđ‰āļēāļŠāļđāđˆāđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļŦāļĨāļąāļ
  • āļ‹āļķāđˆāļ‡āļŠāđˆāļ§āļĒāđƒāļŦāđ‰ Llama 3.1 405B āļŠāļēāļĄāļēāļĢāļ–āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđāļĨāļ°āļ—āļģāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āđ€āļ āļ—āļ•āđˆāļēāļ‡āđ† āđ„āļ”āđ‰āļžāļĢāđ‰āļ­āļĄāđ† āļāļąāļ™ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļĢāļąāļ‡āļŠāļĩāļ•āđˆāļēāļ‡āđ† āđ„āļ”āđ‰

āļāļĨāđ„āļāļāļēāļĢāđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆāļ‚āđ‰āļēāļĄ:

  • āđƒāļ™āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļāļąāļšāļāļēāļĢāļĢāļ§āļĄāļĢāļđāļ›āđāļšāļšāļ•āđˆāļēāļ‡āđ† Llama 3.1 405B āļ™āđˆāļēāļˆāļ°āđƒāļŠāđ‰āļāļĨāđ„āļāļāļēāļĢāļŠāļ™āđƒāļˆāļ‚āđ‰āļēāļĄāļŠāļēāļĒ
  • āļāļĨāđ„āļāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āđ‚āļĄāđ€āļ”āļĨāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļˆāļēāļāļĢāļđāļ›āđāļšāļšāļ•āđˆāļēāļ‡āđ† āđ€āļĄāļ·āđˆāļ­āļŠāļĢāđ‰āļēāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļŦāļĢāļ·āļ­āļ—āļģāļ‡āļēāļ™āļ­āļ·āđˆāļ™āđ†

āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ‚āļ­āļ‡ Llama 3.1 405B āđ€āļ›āļīāļ”āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒ āđ€āļŠāđˆāļ™:

  • āļ„āļģāļšāļĢāļĢāļĒāļēāļĒāļ āļēāļžāđāļĨāļ°āļāļēāļĢāļ•āļ­āļšāļ„āļģāļ–āļēāļĄāļ”āđ‰āļ§āļĒāļ āļēāļž
  • āļāļēāļĢāļ–āļ­āļ”āđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”āđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļžāļĢāđ‰āļ­āļĄāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāļ•āļēāļĄāļšāļĢāļīāļšāļ—
  • āļ‡āļēāļ™āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļĢāļ§āļĄāļ‚āđ‰āļ­āļ„āļ§āļēāļĄ āļĢāļđāļ›āļ āļēāļž āđāļĨāļ°āļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āđ€āļ āļ—āļ­āļ·āđˆāļ™āđ† āđ€āļ‚āđ‰āļēāļ”āđ‰āļ§āļĒāļāļąāļ™

āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āļāļēāļĢāļ­āļšāļĢāļĄ

  • āļ­āļšāļĢāļĄāđ„āļ›āđāļĨāđ‰āļ§ 15 āļĨāđ‰āļēāļ™āļĨāđ‰āļēāļ™ āļŠāļąāļāļāļēāļ“
  • āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ GPU āļ—āļĩāđˆāļŠāļĢāđ‰āļēāļ‡āļ‚āļķāđ‰āļ™āđ€āļ­āļ‡āļ”āđ‰āļ§āļĒ GPU 39.3M āļŠāļąāđˆāļ§āđ‚āļĄāļ‡ āļŠāļģāļŦāļĢāļąāļšāļĢāļļāđˆāļ™ 405B
  • āļāļēāļĢāļ”āļđāđāļĨāļŠāļļāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒāļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļŦāļĨāļēāļĒāļ āļēāļĐāļē

āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āļ•āļēāļĄāļ„āļģāļŠāļąāđˆāļ‡āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļāļķāļāļ­āļšāļĢāļĄāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ:

Benchmarks āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

āļ•āļēāļĢāļēāļ‡āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļš Llama 3.1 405B, Nemotron 4 340B Instruct, GPT-4 (0125), GPT-4 Omni āđāļĨāļ° Claude 3.5 Sonnet āļāļēāļĢāļ§āļąāļ”āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ› āđ€āļŠāđˆāļ™ MMLU āđāļĨāļ° IFEval āļ‡āļēāļ™āđ‚āļ„āđ‰āļ” āđ€āļŠāđˆāļ™ HumanEval āđāļĨāļ° GSM8K āđāļĨāļ°āļ‡āļēāļ™āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨ āđ€āļŠāđˆāļ™ ARC Challenge āļ„āļ°āđāļ™āļ™āđ€āļāļ“āļ‘āđŒāļĄāļēāļ•āļĢāļāļēāļ™āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļŠāļ°āļ—āđ‰āļ­āļ™āļ–āļķāļ‡āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡āđ‚āļĄāđ€āļ”āļĨāđƒāļ™āļāļēāļĢāļ—āļģāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāđāļĨāļ°āļŠāļĢāđ‰āļēāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ—āļĩāđˆāđ€āļŦāļĄāļ·āļ­āļ™āļĄāļ™āļļāļĐāļĒāđŒ āļāļēāļĢāđāļāđ‰āļ›āļąāļāļŦāļēāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™ āđāļĨāļ°āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ‚āļ„āđ‰āļ” āđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°āļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡ Llama 3.1 405B āđāļĨāļ° Claude 3.5 Sonnet āļĄāļĩāļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āđ€āļĨāļīāļĻāđƒāļ™āđ€āļāļ“āļ‘āđŒāļĄāļēāļ•āļĢāļāļēāļ™āļ•āđˆāļēāļ‡āđ† āđ‚āļ”āļĒāđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļąāđ‰āļ™āļŠāļđāļ‡āļ—āļąāđ‰āļ‡āđƒāļ™āļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ›āđāļĨāļ°āļ‡āļēāļ™āđ€āļ‰āļžāļēāļ°āđ‚āļ”āđ€āļĄāļ™

āļ‚āđ‰āļ­āļāļģāļŦāļ™āļ”āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļŠāļģāļŦāļĢāļąāļš Llama 3.1-405B

āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™ Llama 3.1-405B āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāđāļĨāļ°āļ—āļĢāļąāļžāļĒāļēāļāļĢāļāļēāļĢāļ„āļģāļ™āļ§āļ“āļˆāļģāļ™āļ§āļ™āļĄāļēāļ:

  • āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ GPU: āļĢāļļāđˆāļ™ 405B āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ GPU āđ„āļ”āđ‰āļŠāļđāļ‡āļŠāļļāļ” 80GB āļ•āđˆāļ­ A100 GPU āđ€āļžāļ·āđˆāļ­āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļāļēāļĢāđƒāļŠāđ‰ Tensor Parallelism āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ°āļˆāļēāļĒāđ‚āļŦāļĨāļ”āđ„āļ›āļĒāļąāļ‡ GPU āļŦāļĨāļēāļĒāļ•āļąāļ§āđ„āļ”āđ‰
  • āđāļĢāļĄ: āđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āđƒāļŠāđ‰ RAM āļĢāļ°āļšāļšāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒ 512GB āđ€āļžāļ·āđˆāļ­āļˆāļąāļ”āļāļēāļĢāļāļąāļšāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļ‚āļ­āļ‡āļĢāļļāđˆāļ™āđāļĨāļ°āļĢāļąāļšāļ›āļĢāļ°āļāļąāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĢāļēāļšāļĢāļ·āđˆāļ™
  • āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļˆāļąāļ”āđ€āļāđ‡āļš: āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļ„āļļāļ“āļĄāļĩāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļˆāļąāļ”āđ€āļāđ‡āļšāļ‚āđ‰āļ­āļĄāļđāļĨ SSD āļŦāļĨāļēāļĒāđ€āļ—āļĢāļēāđ„āļšāļ•āđŒāļŠāļģāļŦāļĢāļąāļšāļ™āđ‰āļģāļŦāļ™āļąāļāđ‚āļĄāđ€āļ”āļĨāđāļĨāļ°āļŠāļļāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡ SSD āļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āļŠāļđāļ‡āļĄāļĩāļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡āđƒāļ™āļāļēāļĢāļĨāļ”āđ€āļ§āļĨāļēāđƒāļ™āļāļēāļĢāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļāļķāļāđāļĨāļ°āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™ (āđ‚āļĄāđ€āļ”āļĨāļĨāļēāļĄāļ°āđ„āļ­)​​ (āļāļĢāļđ).

āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāđ€āļžāļīāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļŠāļģāļŦāļĢāļąāļš Llama 3.1-405B

āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđ‚āļĄāđ€āļ”āļĨāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ 405B āđ€āļŠāđˆāļ™ Llama 3.1 āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļŦāļĨāļēāļĒāļ›āļĢāļ°āļāļēāļĢ āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āđ€āļ›āđ‡āļ™āļ§āļīāļ˜āļĩāļāļēāļĢāļŠāļģāļ„āļąāļāđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļœāļĨ:

āļ) āļāļēāļĢāļŦāļēāļ›āļĢāļīāļĄāļēāļ“: āļāļēāļĢāļŦāļēāļ›āļĢāļīāļĄāļēāļ“āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāļĨāļ”āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļ‚āļ­āļ‡āļ™āđ‰āļģāļŦāļ™āļąāļāļ‚āļ­āļ‡āđāļšāļšāļˆāļģāļĨāļ­āļ‡ āļ‹āļķāđˆāļ‡āļˆāļ°āļĨāļ”āļāļēāļĢāđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāđāļĨāļ°āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āđƒāļ™āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āđ‚āļ”āļĒāđ„āļĄāđˆāļ—āļģāđƒāļŦāđ‰āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļĨāļ”āļĨāļ‡āļ­āļĒāđˆāļēāļ‡āļĄāļēāļ Llama 3.1 āļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļŦāļēāļ›āļĢāļīāļĄāļēāļ“āđ€āļ›āđ‡āļ™ FP8 āļŦāļĢāļ·āļ­āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļ—āļĩāđˆāļ•āđˆāļģāļāļ§āđˆāļēāđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āđ€āļŠāđˆāļ™ QLoRA (Quantized Low-Rank Adaptation) āđ€āļžāļ·āđˆāļ­āđ€āļžāļīāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļšāļ™ GPU

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig

model_name = "meta-llama/Meta-Llama-3.1-405B"
bnb_config = BitsAndBytesConfig(
load_in_8bit=True, # Change to load_in_4bit for 4-bit precision
bnb_8bit_quant_type="fp8",
bnb_8bit_compute_dtype=torch.float16,
)
model = AutoModelForCausalLM.from_pretrained(
model_name,
quantization_config=bnb_config,
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

b) āļ„āļ§āļēāļĄāđ€āļ—āđˆāļēāđ€āļ—āļĩāļĒāļĄāļ‚āļ­āļ‡āđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒ: āļ„āļ§āļēāļĄāđ€āļ—āđˆāļēāđ€āļ—āļĩāļĒāļĄāļ‚āļ­āļ‡āđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāđāļĒāļāđ€āļĨāđ€āļĒāļ­āļĢāđŒāļ‚āļ­āļ‡āđ‚āļĄāđ€āļ”āļĨāļ­āļ­āļāđ€āļ›āđ‡āļ™ GPU āļŦāļĨāļēāļĒāļ•āļąāļ§āđ€āļžāļ·āđˆāļ­āļ—āļģāļāļēāļĢāļ„āļģāļ™āļ§āļ“āđāļšāļšāļ‚āļ™āļēāļ™ āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡āļŠāļģāļŦāļĢāļąāļšāđ‚āļĄāđ€āļ”āļĨāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆ āđ€āļŠāđˆāļ™ Llama 3.1 āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ—āļĢāļąāļžāļĒāļēāļāļĢāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline

model_name = "meta-llama/Meta-Llama-3.1-405B"
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map="auto",
torch_dtype=torch.float16
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
nlp = pipeline("text-generation", model=model, tokenizer=tokenizer, device=0)

c) āļāļēāļĢāđ€āļžāļīāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž KV-Cache: āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāđāļ„āļŠāļ„āļĩāļĒāđŒ-āļ„āđˆāļē (KV) āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļŠāļģāļ„āļąāļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļšāļĢāļīāļšāļ—āļ—āļĩāđˆāļĒāļēāļ§ Llama 3.1 āļĢāļ­āļ‡āļĢāļąāļšāļ„āļ§āļēāļĄāļĒāļēāļ§āļšāļĢāļīāļšāļ—āļ—āļĩāđˆāļ‚āļĒāļēāļĒ āļ‹āļķāđˆāļ‡āļŠāļēāļĄāļēāļĢāļ–āļˆāļąāļ”āļāļēāļĢāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„ KV-cache āļ—āļĩāđˆāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄ āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

# Ensure you have sufficient GPU memory to handle extended context lengths
output = model.generate(
input_ids, 
max_length=4096, # Increase based on your context length requirement
use_cache=True
)

āļāļĨāļĒāļļāļ—āļ˜āđŒāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰

āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰ Llama 3.1-405B āļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āļĄāļĩāļāļēāļĢāļžāļīāļˆāļēāļĢāļ“āļēāļ—āļĢāļąāļžāļĒāļēāļāļĢāļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāļ­āļĒāđˆāļēāļ‡āļĢāļ­āļšāļ„āļ­āļš āļ™āļĩāđˆāļ„āļ·āļ­āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļšāļēāļ‡āļŠāđˆāļ§āļ™:

āļ) āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļšāļ™āļ„āļĨāļēāļ§āļ”āđŒ: āđƒāļŠāđ‰āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļˆāļēāļāļ­āļīāļ™āļŠāđāļ•āļ™āļ‹āđŒ GPU āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļŠāļđāļ‡āļˆāļēāļāļœāļđāđ‰āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāļĢāļ°āļšāļšāļ„āļĨāļēāļ§āļ”āđŒ āđ€āļŠāđˆāļ™ AWS (āļ­āļīāļ™āļŠāđāļ•āļ™āļ‹āđŒ P4d) āļŦāļĢāļ·āļ­ Google Cloud (TPU v4)

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

# Example setup for AWS
import boto3
ec2 = boto3.resource('ec2')
instance = ec2.create_instances(
ImageId='ami-0c55b159cbfafe1f0', # Deep Learning AMI
InstanceType='p4d.24xlarge',
MinCount=1,
MaxCount=1
)

b) āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ āļēāļĒāđƒāļ™āļ­āļ‡āļ„āđŒāļāļĢ: āļŠāļģāļŦāļĢāļąāļšāļ­āļ‡āļ„āđŒāļāļĢāļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡ āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰ Llama 3.1 āļ āļēāļĒāđƒāļ™āļ­āļ‡āļ„āđŒāļāļĢāļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ„āļ§āļšāļ„āļļāļĄāđ„āļ”āđ‰āļĄāļēāļāļ‚āļķāđ‰āļ™āđāļĨāļ°āļ­āļēāļˆāļĨāļ”āļ•āđ‰āļ™āļ—āļļāļ™āđƒāļ™āļĢāļ°āļĒāļ°āļĒāļēāļ§āđ„āļ”āđ‰

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē:

# Example setup for on-premises deployment
# Ensure you have multiple high-performance GPUs, like NVIDIA A100 or H100
pip install transformers
pip install torch # Ensure CUDA is enabled

c) āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āđāļšāļšāļāļĢāļ°āļˆāļēāļĒ: āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ‚āļ™āļēāļ”āđƒāļŦāļāđˆ āđƒāļŦāđ‰āļžāļīāļˆāļēāļĢāļ“āļēāļāļĢāļ°āļˆāļēāļĒāđ‚āļĄāđ€āļ”āļĨāđ„āļ›āļĒāļąāļ‡āļŦāļĨāļēāļĒāđ‚āļŦāļ™āļ”

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

# Using Hugging Face's accelerate library
from accelerate import Accelerator

accelerator = Accelerator()
model, tokenizer = accelerator.prepare(model, tokenizer)

āđƒāļŠāđ‰āļāļĢāļ“āļĩāđāļĨāļ°āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™

āļžāļĨāļąāļ‡āđāļĨāļ°āļ„āļ§āļēāļĄāļĒāļ·āļ”āļŦāļĒāļļāđˆāļ™āļ‚āļ­āļ‡ Llama 3.1-405B āđ€āļ›āļīāļ”āļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰āļĄāļēāļāļĄāļēāļĒ:

āļ) āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļąāļ‡āđ€āļ„āļĢāļēāļ°āļŦāđŒ: āļŠāļĢāđ‰āļēāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‰āļžāļēāļ°āđ‚āļ”āđ€āļĄāļ™āļ„āļļāļ“āļ āļēāļžāļŠāļđāļ‡āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļāļķāļāđ‚āļĄāđ€āļ”āļĨāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļāļĢāļ“āļĩāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™:

from transformers import pipeline

generator = pipeline("text-generation", model=model, tokenizer=tokenizer)
synthetic_data = generator("Generate financial reports for Q1 2023", max_length=200)

b) āļāļēāļĢāļāļĨāļąāđˆāļ™āļāļĢāļ­āļ‡āļ„āļ§āļēāļĄāļĢāļđāđ‰: āļ–āđˆāļēāļĒāļ—āļ­āļ”āļ„āļ§āļēāļĄāļĢāļđāđ‰āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ‚āļĄāđ€āļ”āļĨ 405B āđ„āļ›āļĒāļąāļ‡āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđ€āļĨāđ‡āļāļĨāļ‡āđāļĨāļ°āļ›āļĢāļąāļšāđƒāļŠāđ‰āđ„āļ”āđ‰āļĄāļēāļāļ‚āļķāđ‰āļ™

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

# Use distillation techniques from Hugging Face
from transformers import DistillationTrainer, DistillationTrainingArguments

training_args = DistillationTrainingArguments(
    output_dir="./distilled_model",
    per_device_train_batch_size=2,
    num_train_epochs=3,
    logging_dir="./logs",
)
trainer = DistillationTrainer(
    teacher_model=model,
    student_model=smaller_model,
    args=training_args,
    train_dataset=train_dataset,
    eval_dataset=eval_dataset,
)
trainer.train()

c) āļāļēāļĢāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āđ€āļ‰āļžāļēāļ°āđ‚āļ”āđ€āļĄāļ™: āļ›āļĢāļąāļšāđ‚āļĄāđ€āļ”āļĨāļŠāļģāļŦāļĢāļąāļšāļ‡āļēāļ™āļžāļīāđ€āļĻāļĐāļŦāļĢāļ·āļ­āļ­āļļāļ•āļŠāļēāļŦāļāļĢāļĢāļĄ

āļĢāļŦāļąāļŠāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

from transformers import Trainer, TrainingArguments

training_args = TrainingArguments(
    output_dir="./domain_specific_model",
    per_device_train_batch_size=1,
    num_train_epochs=3,
)
trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=train_dataset,
    eval_dataset=eval_dataset,
)
trainer.train()

āđ€āļ—āļ„āļ™āļīāļ„āđāļĨāļ°āļāļĨāļĒāļļāļ—āļ˜āđŒāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļˆāļ°āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļ„āļļāļ“āļ„āļ§āļšāļ„āļļāļĄāļĻāļąāļāļĒāļ āļēāļžāļ‚āļ­āļ‡ Llama 3.1-405B āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āđ€āļ•āđ‡āļĄāļ—āļĩāđˆ āļ—āļģāđƒāļŦāđ‰āļĄāļąāđˆāļ™āđƒāļˆāđ„āļ”āđ‰āļ§āđˆāļēāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™ AI āđ€āļ‰āļžāļēāļ°āļ”āđ‰āļēāļ™āļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļ›āļĢāļąāļšāļ‚āļ™āļēāļ”āđ„āļ”āđ‰ āđāļĨāļ°āļ›āļĢāļąāļšāļ‚āļ™āļēāļ”āđ„āļ”āđ‰

āļ—āļīāļĻāļ—āļēāļ‡āđƒāļ™āļ­āļ™āļēāļ„āļ•

āļāļēāļĢāđ€āļ›āļīāļ”āļ•āļąāļ§ Llama 3.1-405B āļĄāļĩāđāļ™āļ§āđ‚āļ™āđ‰āļĄāļ—āļĩāđˆāļˆāļ°āđ€āļĢāđˆāļ‡āļŠāļĢāđ‰āļēāļ‡āļ™āļ§āļąāļ•āļāļĢāļĢāļĄāđƒāļ™āļŦāļĨāļēāļĒāļ”āđ‰āļēāļ™:

  • āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āļ­āļĒāđˆāļēāļ‡āļĨāļ°āđ€āļ­āļĩāļĒāļ”āļŠāļģāļŦāļĢāļąāļšāđ‚āļ”āđ€āļĄāļ™āđ€āļ‰āļžāļēāļ°āļ—āļēāļ‡
  • āļāļēāļĢāļžāļąāļ’āļ™āļēāļ§āļīāļ˜āļĩāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļĄāļēāļāļ‚āļķāđ‰āļ™
  • āļ„āļ§āļēāļĄāļāđ‰āļēāļ§āļŦāļ™āđ‰āļēāđƒāļ™āļāļēāļĢāļšāļĩāļšāļ­āļąāļ”āđāļĨāļ°āļāļēāļĢāļāļĨāļąāđˆāļ™āđāļšāļšāļˆāļģāļĨāļ­āļ‡

āļŠāļĢāļļāļ›

Llama 3.1-405B āđāļŠāļ”āļ‡āļ–āļķāļ‡āļ„āļ§āļēāļĄāļŠāļģāđ€āļĢāđ‡āļˆāļ„āļĢāļąāđ‰āļ‡āļŠāļģāļ„āļąāļāđƒāļ™ AI āđāļšāļšāđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠ āđ‚āļ”āļĒāļ™āļģāđ€āļŠāļ™āļ­āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ—āļĩāđˆāļāđˆāļ­āļ™āļŦāļ™āđ‰āļēāļ™āļĩāđ‰āļĄāļĩāđ€āļ‰āļžāļēāļ°āđƒāļ™āđ‚āļĄāđ€āļ”āļĨāđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™

āļ‚āļ“āļ°āļ—āļĩāđˆāđ€āļĢāļēāļŠāļģāļĢāļ§āļˆāļžāļĨāļąāļ‡āļ‚āļ­āļ‡āđ‚āļĄāđ€āļ”āļĨāļ™āļĩāđ‰āļ•āđˆāļ­āđ„āļ› āļāļēāļĢāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđ‚āļ”āļĒāļ„āļģāļ™āļķāļ‡āļ–āļķāļ‡āļ„āļ§āļēāļĄāļĢāļąāļšāļœāļīāļ”āļŠāļ­āļšāđāļĨāļ°āļˆāļĢāļīāļĒāļ˜āļĢāļĢāļĄāđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļŠāļģāļ„āļąāļ āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āđāļĨāļ°āļāļēāļĢāļ›āđ‰āļ­āļ‡āļāļąāļ™āļ—āļĩāđˆāļĄāļĩāđƒāļŦāđ‰āļ„āļ§āļšāļ„āļđāđˆāđ„āļ›āļāļąāļšāđ‚āļĄāđ€āļ”āļĨāļ™āļĩāđ‰āļ–āļ·āļ­āđ€āļ›āđ‡āļ™āļāļĢāļ­āļšāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ„āļ§āļēāļĄāļĢāļąāļšāļœāļīāļ”āļŠāļ­āļš āđāļ•āđˆāļāļēāļĢāđ€āļāđ‰āļēāļĢāļ°āļ§āļąāļ‡āļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āđāļĨāļ°āļ„āļ§āļēāļĄāļĢāđˆāļ§āļĄāļĄāļ·āļ­āđƒāļ™āļŠāļļāļĄāļŠāļ™āļˆāļ°āđ€āļ›āđ‡āļ™āļāļļāļāđāļˆāļŠāļģāļ„āļąāļāđƒāļ™āļāļēāļĢāļĢāļąāļšāļĢāļ­āļ‡āļ§āđˆāļēāđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩāļ­āļąāļ™āļ—āļĢāļ‡āļžāļĨāļąāļ‡āļ™āļĩāđ‰āļˆāļ°āļ–āļđāļāļ™āļģāđ„āļ›āđƒāļŠāđ‰āđ€āļžāļ·āđˆāļ­āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ‚āļ­āļ‡āļŠāļąāļ‡āļ„āļĄ

āļ‰āļąāļ™āđƒāļŠāđ‰āđ€āļ§āļĨāļēāļŦāđ‰āļēāļ›āļĩāļ—āļĩāđˆāļœāđˆāļēāļ™āļĄāļēāļŦāļĄāļāļĄāļļāđˆāļ™āļ­āļĒāļđāđˆāļāļąāļšāđ‚āļĨāļāđāļŦāđˆāļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļ‚āļ­āļ‡āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āđāļĨāļ°āļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđ€āļŠāļīāļ‡āļĨāļķāļāļ—āļĩāđˆāļ™āđˆāļēāļŠāļ™āđƒāļˆ āļ„āļ§āļēāļĄāļŦāļĨāļ‡āđƒāļŦāļĨāđāļĨāļ°āļ„āļ§āļēāļĄāđ€āļŠāļĩāđˆāļĒāļ§āļŠāļēāļāļ‚āļ­āļ‡āļ‰āļąāļ™āļ—āļģāđƒāļŦāđ‰āļ‰āļąāļ™āļĄāļĩāļŠāđˆāļ§āļ™āļĢāđˆāļ§āļĄāđƒāļ™āđ‚āļ„āļĢāļ‡āļāļēāļĢāļ§āļīāļĻāļ§āļāļĢāļĢāļĄāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒāļāļ§āđˆāļē 50 āđ‚āļ„āļĢāļ‡āļāļēāļĢ āđ‚āļ”āļĒāđ€āļ™āđ‰āļ™āđ€āļ‰āļžāļēāļ°āļ—āļĩāđˆ AI/ML āļ„āļ§āļēāļĄāļ­āļĒāļēāļāļĢāļđāđ‰āļ­āļĒāļēāļāđ€āļŦāđ‡āļ™āļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļ‚āļ­āļ‡āļ‰āļąāļ™āļĒāļąāļ‡āļ”āļķāļ‡āļ‰āļąāļ™āđ„āļ›āļŠāļđāđˆāļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ āļēāļĐāļēāļ˜āļĢāļĢāļĄāļŠāļēāļ•āļī āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļŠāļēāļ‚āļēāļ—āļĩāđˆāļ‰āļąāļ™āļāļĢāļ°āļ•āļ·āļ­āļĢāļ·āļ­āļĢāđ‰āļ™āļ—āļĩāđˆāļˆāļ°āļŠāļģāļĢāļ§āļˆāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ