Post

Tools for Building LLM Applications

  • πŸ‘‰ The landscape for building LLM applications is rich with a variety of tools and technologies, each serving different needs and stages of the process.

  • πŸ‘‰Finding and picking the right tools and frameworks for your LLM app is key and takes time. Even if you’re just starting out, knowing what’s out there and how it all works together is super important!

β›³ To simplify your decision process, I’ve compiled a detailed guide to help you navigate the large pool of options available for LLM application development.

Link to the guide: https://github.com/aishwaryanr/awesome-generative-ai-guide/blob/main/free_courses/Applied_LLMs_Mastery_2024/week5_tools_for_LLM_apps.md

πŸ”° LLM tools can be broadly classified into four main categories:

  • β›³ Input Processing Tools: These tools are designed to handle data ingestion and prepare various inputs for your application. They include data pipelines and vector databases that are crucial for processing and preparing data for the LLM.

  • β›³ LLM Development Tools: This category encompasses tools that aid in interacting with Large Language Models. This includes services for calling LLMs, fine-tuning them, conducting experiments, and managing orchestration. Examples include LLM providers, orchestration platforms, and computing and experimentation platforms.

  • β›³ Output Tools: Post-processing tools that manage and refine the output from the LLM application fall into this category. They focus on processes after the LLM has generated its output, such as evaluation frameworks that assess the quality and relevance of the output.

  • β›³ Application Tools: These are tools that manage all aspects of the LLM application, including hosting, monitoring etc.

  • 🎯 This guide will provide deeper insights into these types of tools, their various options, along with their advantages and disadvantages, giving you a comprehensive view of what’s available for application building and how to best utilize these resources.

πŸ›‘ Please note that this guide is not comprehensive by any means, it is only supposed to give you an overview of the popular tools!

In addition to categorizing these tools, I’ve differentiated between tools necessary for RAG versus those needed for fine-tuning LLMs.

 Tools for building LLM Application

Translate to Korean

πŸ₯ LLM μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜ ꡬ좕을 μœ„ν•œ κ°€μž₯ 인기 μžˆλŠ” 툴과 ν”„λ ˆμž„μ›Œν¬μ— λŒ€ν•œ 포괄적인 κ°€μ΄λ“œλ₯Ό 확인해 λ³΄μ„Έμš”.

  • πŸ‘‰ LLM μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜ ꡬ좕을 μœ„ν•œ ν™˜κ²½μ€ λ‹€μ–‘ν•œ 툴과 기술둜 ν’λΆ€ν•˜λ©°, 각 툴과 κΈ°μˆ μ€ μ„œλ‘œ λ‹€λ₯Έ μš”κ΅¬μ™€ ν”„λ‘œμ„ΈμŠ€ 단계λ₯Ό μΆ©μ‘±μ‹œν‚΅λ‹ˆλ‹€.

  • πŸ‘‰LLM 앱에 μ ν•©ν•œ 툴과 ν”„λ ˆμž„μ›Œν¬λ₯Ό μ°Ύκ³  μ„ νƒν•˜λŠ” 것이 핡심이며 μ‹œκ°„μ΄ κ±Έλ¦½λ‹ˆλ‹€. 이제 막 μ‹œμž‘ν•˜λ”λΌλ„ 무엇이 있고 λͺ¨λ“  것이 μ–΄λ–»κ²Œ ν•¨κ»˜ μž‘λ™ν•˜λŠ”μ§€ μ•„λŠ” 것이 맀우 μ€‘μš”ν•©λ‹ˆλ‹€!

β›³ μ˜μ‚¬ κ²°μ • 과정을 λ‹¨μˆœν™”ν•˜κΈ° μœ„ν•΄, LLM μ• ν”Œλ¦¬μΌ€μ΄μ…˜ κ°œλ°œμ— μ‚¬μš©ν•  수 μžˆλŠ” λ°©λŒ€ν•œ μ˜΅μ…˜ 풀을 νƒμƒ‰ν•˜λŠ” 데 도움이 λ˜λŠ” μžμ„Έν•œ κ°€μ΄λ“œλ₯Ό μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€.

πŸ”° LLM νˆ΄μ€ 크게 λ„€ 가지 λ²”μ£Όλ‘œ λΆ„λ₯˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • β›³ μž…λ ₯ 처리 도ꡬ: μ΄λŸ¬ν•œ λ„κ΅¬λŠ” 데이터 μˆ˜μ§‘μ„ μ²˜λ¦¬ν•˜κ³  μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— λŒ€ν•œ λ‹€μ–‘ν•œ μž…λ ₯을 μ€€λΉ„ν•˜λ„λ‘ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” LLM을 μœ„ν•œ 데이터λ₯Ό μ²˜λ¦¬ν•˜κ³  μ€€λΉ„ν•˜λŠ” 데 μ€‘μš”ν•œ 데이터 νŒŒμ΄ν”„λΌμΈκ³Ό 벑터 λ°μ΄ν„°λ² μ΄μŠ€κ°€ ν¬ν•¨λ©λ‹ˆλ‹€.

  • β›³ LLM 개발 툴(LLM Development Tools): 이 μΉ΄ν…Œκ³ λ¦¬μ—λŠ” λ‹€μŒμ„ μ§€μ›ν•˜λŠ” 툴이 ν¬ν•¨λ©λ‹ˆλ‹€. λŒ€κ·œλͺ¨ μ–Έμ–΄ λͺ¨λΈκ³Ό μƒν˜Έ μž‘μš©ν•©λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” LLM 호좜, λ―Έμ„Έ μ‘°μ •, μ‹€ν—˜ μˆ˜ν–‰, μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜ 관리λ₯Ό μœ„ν•œ μ„œλΉ„μŠ€κ°€ ν¬ν•¨λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ LLM κ³΅κΈ‰μž, μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜ ν”Œλž«νΌ, μ»΄ν“¨νŒ… 및 μ‹€ν—˜ ν”Œλž«νΌμ΄ μžˆμŠ΅λ‹ˆλ‹€.

  • β›³ 좜λ ₯ 툴(Output Tools): LLM μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 좜λ ₯을 κ΄€λ¦¬ν•˜κ³  λ‹€λ“¬λŠ” 포슀트 ν”„λ‘œμ„Έμ‹± 툴이 이 범주에 μ†ν•©λ‹ˆλ‹€. LLM이 결과물을 μƒμ„±ν•œ ν›„μ˜ ν”„λ‘œμ„ΈμŠ€(예: 결과물의 ν’ˆμ§ˆκ³Ό 관련성을 ν‰κ°€ν•˜λŠ” 평가 ν”„λ ˆμž„μ›Œν¬)에 μ΄ˆμ μ„ 맞μΆ₯λ‹ˆλ‹€.

  • β›³ Application Tools: LLM μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ λͺ¨λ“  츑면을 κ΄€λ¦¬ν•˜λŠ” 툴둜, ν˜ΈμŠ€νŒ…, λͺ¨λ‹ˆν„°λ§ 등을 ν¬ν•¨ν•©λ‹ˆλ‹€.

  • 🎯 이 κ°€μ΄λ“œμ—μ„œλŠ” μ΄λŸ¬ν•œ μœ ν˜•μ˜ 도ꡬ, λ‹€μ–‘ν•œ μ˜΅μ…˜, μž₯점 및 단점에 λŒ€ν•œ 심측적인 톡찰λ ₯을 μ œκ³΅ν•˜μ—¬ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λΉŒλ“œμ— μ‚¬μš©ν•  수 μžˆλŠ” ν•­λͺ©κ³Ό μ΄λŸ¬ν•œ λ¦¬μ†ŒμŠ€λ₯Ό κ°€μž₯ 잘 ν™œμš©ν•˜λŠ” 방법에 λŒ€ν•œ 포괄적인 보기λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.

πŸ›‘ 이 κ°€μ΄λ“œλŠ” κ²°μ½” 포괄적이지 μ•ŠμœΌλ©° 인기 μžˆλŠ” 도ꡬ에 λŒ€ν•œ κ°œμš”λ§Œ μ œκ³΅ν•˜κΈ° μœ„ν•œ κ²ƒμž…λ‹ˆλ‹€!

μ΄λŸ¬ν•œ νˆ΄μ„ λΆ„λ₯˜ν•˜λŠ” 것 외에도 RAG에 ν•„μš”ν•œ 툴과 LLM을 λ―Έμ„Έ μ‘°μ •ν•˜λŠ” 데 ν•„μš”ν•œ νˆ΄μ„ κ΅¬λΆ„ν–ˆμŠ΅λ‹ˆλ‹€.

This post is licensed under CC BY 4.0 by the author.