Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"chat.tools.terminal.autoApprove": {
"/^\\$patterns = @\\('멀티 에이전트','디자인 패턴','관찰성','인간 개입'\\); \\$files = Get-ChildItem translations/ko -Recurse -File -Filter \\*\\.md; foreach\\(\\$p in \\$patterns\\)\\{ Write-Output \"=== \\$p ===\"; Select-String -Path \\$files\\.FullName -Pattern \\$p -SimpleMatch \\| ForEach-Object \\{ \"\\{0\\}:\\{1\\}: \\{2\\}\" -f \\$_\\.Path, \\$_\\.LineNumber, \\$_\\.Line\\.Trim\\(\\) \\} \\}$/": {
"approve": true,
"matchCommandLine": true
}
}
}
Comment on lines +1 to +8
6 changes: 3 additions & 3 deletions translations/ko/03-agentic-design-patterns/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ AI 에이전트 시스템을 구축하는 방법에는 여러 가지가 있습
- .NET: [Agent Framework](./code_samples/03-dotnet-agent-framework.md)


## AI 에이전트 디자인 패턴에 대해 더 궁금한 점이 있으신가요?
## AI 에이전트 설계 패턴에 대해 더 궁금한 점이 있으신가요?

[Microsoft Foundry Discord](https://aka.ms/ai-agents/discord)에 참여하여 다른 학습자들과 만나고, 오피스 아워에 참석하며 AI 에이전트 관련 질문에 답변을 받으세요.

Expand All @@ -108,11 +108,11 @@ AI 에이전트 시스템을 구축하는 방법에는 여러 가지가 있습

## 다음 수업

[도구 사용 디자인 패턴](../04-tool-use/README.md)
[도구 사용 설계 패턴](../04-tool-use/README.md)

---

<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**면책 조항**:
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 위해 노력하고 있으나, 자동 번역에는 오류나 부정확성이 포함될 수 있음을 양지해 주시기 바랍니다. 원본 문서는 해당 언어의 원본 문서가 권위 있는 자료로 간주되어야 합니다. 중요한 정보의 경우 전문적인 인간 번역을 권장합니다. 본 번역의 사용으로 인해 발생하는 오해나 잘못된 해석에 대해 당사는 책임을 지지 않습니다.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# 🎨 GitHub 모델과 함께하는 에이전트 디자인 패턴 (.NET)
# 🎨 GitHub 모델과 함께하는 에이전트 설계 패턴 (.NET)

## 📋 학습 목표

이 예제는 Microsoft Agent Framework를 사용하여 .NET에서 GitHub 모델을 통합한 지능형 에이전트를 구축하기 위한 엔터프라이즈급 디자인 패턴을 보여줍니다. 에이전트를 프로덕션 준비 상태로 만들고, 유지 관리 가능하며, 확장 가능한 전문적인 패턴과 아키텍처 접근 방식을 배울 수 있습니다.
이 예제는 Microsoft Agent Framework를 사용하여 .NET에서 GitHub 모델을 통합한 지능형 에이전트를 구축하기 위한 엔터프라이즈급 설계 패턴을 보여줍니다. 에이전트를 프로덕션 준비 상태로 만들고, 유지 관리 가능하며, 확장 가능한 전문적인 패턴과 아키텍처 접근 방식을 배울 수 있습니다.

### 엔터프라이즈 디자인 패턴
### 엔터프라이즈 설계 패턴

- 🏭 **팩토리 패턴**: 의존성 주입을 통한 표준화된 에이전트 생성
- 🔧 **빌더 패턴**: 유연한 에이전트 구성 및 설정
Expand Down Expand Up @@ -36,7 +36,7 @@
- **GitHub 모델 통합**: 고성능 API 클라이언트 패턴
- **구성 시스템**: appsettings.json 및 환경 통합

### 디자인 패턴 구현
### 설계 패턴 구현

```mermaid
graph LR
Expand Down Expand Up @@ -294,4 +294,4 @@ await foreach (var update in agent.RunStreamingAsync("I don't like that destinat
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**면책 조항**:
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 위해 노력하고 있지만, 자동 번역에는 오류나 부정확성이 포함될 수 있습니다. 원본 문서를 해당 언어로 작성된 상태에서 권위 있는 자료로 간주해야 합니다. 중요한 정보의 경우, 전문적인 인간 번역을 권장합니다. 이 번역 사용으로 인해 발생하는 오해나 잘못된 해석에 대해 당사는 책임을 지지 않습니다.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
40 changes: 20 additions & 20 deletions translations/ko/04-tool-use/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,45 +2,45 @@

> _(위 이미지를 클릭하여 이 수업의 동영상을 시청하세요)_

# 도구 사용 디자인 패턴
# 도구 사용 설계 패턴

도구는 AI 에이전트가 더 넓은 범위의 기능을 가지도록 해주기 때문에 흥미롭습니다. 에이전트가 수행할 수 있는 동작이 제한된 세트에 머무르는 대신, 도구를 추가함으로써 에이전트는 이제 다양한 동작을 수행할 수 있습니다. 이 장에서는 AI 에이전트가 특정 도구를 사용하여 목표를 달성하는 방법을 설명하는 도구 사용 디자인 패턴을 살펴보겠습니다.
도구는 AI 에이전트가 더 넓은 범위의 기능을 가지도록 해주기 때문에 흥미롭습니다. 에이전트가 수행할 수 있는 동작이 제한된 세트에 머무르는 대신, 도구를 추가함으로써 에이전트는 이제 다양한 동작을 수행할 수 있습니다. 이 장에서는 AI 에이전트가 특정 도구를 사용하여 목표를 달성하는 방법을 설명하는 도구 사용 설계 패턴을 살펴보겠습니다.

## 소개

이번 수업에서는 다음 질문들에 답하고자 합니다:

- 도구 사용 디자인 패턴이란 무엇인가?
- 도구 사용 설계 패턴이란 무엇인가?
- 어디에 적용할 수 있는가?
- 디자인 패턴을 구현하는 데 필요한 요소/빌딩 블록은 무엇인가?
- 신뢰할 수 있는 AI 에이전트를 구축하기 위해 도구 사용 디자인 패턴을 사용할 때의 특별한 고려사항은 무엇인가?
- 설계 패턴을 구현하는 데 필요한 요소/빌딩 블록은 무엇인가?
- 신뢰할 수 있는 AI 에이전트를 구축하기 위해 도구 사용 설계 패턴을 사용할 때의 특별한 고려사항은 무엇인가?

## 학습 목표

이 수업을 완료하면 다음을 수행할 수 있습니다:

- 도구 사용 디자인 패턴과 그 목적을 정의할 수 있다.
- 도구 사용 디자인 패턴이 적용 가능한 사용 사례를 식별할 수 있다.
- 디자인 패턴을 구현하는 데 필요한 핵심 요소를 이해할 수 있다.
- 이 디자인 패턴을 사용하는 AI 에이전트의 신뢰성을 보장하기 위한 고려사항을 인식할 수 있다.
- 도구 사용 설계 패턴과 그 목적을 정의할 수 있다.
- 도구 사용 설계 패턴이 적용 가능한 사용 사례를 식별할 수 있다.
- 설계 패턴을 구현하는 데 필요한 핵심 요소를 이해할 수 있다.
- 이 설계 패턴을 사용하는 AI 에이전트의 신뢰성을 보장하기 위한 고려사항을 인식할 수 있다.

## 도구 사용 디자인 패턴이란 무엇인가?
## 도구 사용 설계 패턴이란 무엇인가?

<strong>도구 사용 디자인 패턴</strong>은 LLM이 특정 목표를 달성하기 위해 외부 도구와 상호작용할 수 있게 하는 데 중점을 둡니다. 도구는 에이전트가 실행하여 동작을 수행할 수 있는 코드입니다. 도구는 계산기와 같은 단순한 함수거나 주식 가격 조회나 일기 예보와 같은 타사 서비스에 대한 API 호출일 수 있습니다. AI 에이전트의 맥락에서 도구는 <strong>모델이 생성한 함수 호출</strong>에 응답하여 에이전트에 의해 실행되도록 설계되었습니다.
<strong>도구 사용 설계 패턴</strong>은 LLM이 특정 목표를 달성하기 위해 외부 도구와 상호작용할 수 있게 하는 데 중점을 둡니다. 도구는 에이전트가 실행하여 동작을 수행할 수 있는 코드입니다. 도구는 계산기와 같은 단순한 함수거나 주식 가격 조회나 일기 예보와 같은 타사 서비스에 대한 API 호출일 수 있습니다. AI 에이전트의 맥락에서 도구는 <strong>모델이 생성한 함수 호출</strong>에 응답하여 에이전트에 의해 실행되도록 설계되었습니다.

## 어디에 적용할 수 있는가?

AI 에이전트는 도구를 활용하여 복잡한 작업을 완료하거나 정보를 검색하고 결정을 내릴 수 있습니다. 도구 사용 디자인 패턴은 데이터베이스, 웹 서비스 또는 코드 인터프리터와 같이 외부 시스템과 동적으로 상호작용해야 하는 시나리오에서 자주 사용됩니다. 다음과 같은 다양한 사용 사례에 유용합니다:
AI 에이전트는 도구를 활용하여 복잡한 작업을 완료하거나 정보를 검색하고 결정을 내릴 수 있습니다. 도구 사용 설계 패턴은 데이터베이스, 웹 서비스 또는 코드 인터프리터와 같이 외부 시스템과 동적으로 상호작용해야 하는 시나리오에서 자주 사용됩니다. 다음과 같은 다양한 사용 사례에 유용합니다:

- **동적 정보 검색:** 에이전트가 최신 데이터를 가져오기 위해 외부 API나 데이터베이스에 질의할 수 있습니다(예: 데이터 분석을 위한 SQLite 데이터베이스 질의, 주식 가격 또는 날씨 정보 조회).
- **코드 실행 및 해석:** 수학 문제 해결, 보고서 생성 또는 시뮬레이션 수행을 위해 코드나 스크립트를 실행할 수 있습니다.
- **워크플로 자동화:** 작업 스케줄러, 이메일 서비스 또는 데이터 파이프라인과 같은 도구를 통합하여 반복적이거나 다단계 워크플로를 자동화합니다.
- **고객 지원:** CRM 시스템, 티켓팅 플랫폼 또는 지식 베이스와 상호작용하여 사용자 문의를 해결할 수 있습니다.
- **콘텐츠 생성 및 편집:** 문법 검사기, 텍스트 요약기 또는 콘텐츠 안전성 평가기와 같은 도구를 활용하여 콘텐츠 생성 작업을 지원할 수 있습니다.

## 도구 사용 디자인 패턴을 구현하는 데 필요한 요소/빌딩 블록은 무엇인가?
## 도구 사용 설계 패턴을 구현하는 데 필요한 요소/빌딩 블록은 무엇인가?

이 빌딩 블록들은 AI 에이전트가 다양한 작업을 수행할 수 있도록 합니다. 도구 사용 디자인 패턴 구현에 필요한 핵심 요소를 살펴보겠습니다:
이 빌딩 블록들은 AI 에이전트가 다양한 작업을 수행할 수 있도록 합니다. 도구 사용 설계 패턴 구현에 필요한 핵심 요소를 살펴보겠습니다:

- **함수/도구 스키마**: 함수 이름, 목적, 필수 매개변수 및 예상 출력물을 포함한 사용 가능한 도구들의 세부 정의. 이러한 스키마를 통해 LLM은 어떤 도구가 사용 가능한지, 어떻게 유효한 요청을 구성할지 이해할 수 있습니다.

Expand All @@ -52,7 +52,7 @@ AI 에이전트는 도구를 활용하여 복잡한 작업을 완료하거나

- **오류 처리 및 검증**: 도구 실행 실패 처리, 매개변수 검증, 예상치 못한 응답 관리 메커니즘.

- **상태 관리**: 대화 맥락, 이전 도구 상호작용 및 지속적인 데이터를 추적하여 다회차 상호작용 간 일관성 보장.
- **상태 관리**: 대화 맥락, 이전 도구 상호작용 및 지속적인 데이터를 추적하여 다중 세션 상호작용 간 일관성 보장.

다음으로 함수/도구 호출에 대해 좀 더 자세히 살펴보겠습니다.

Expand Down Expand Up @@ -202,7 +202,7 @@ AI 에이전트는 도구를 활용하여 복잡한 작업을 완료하거나

## 에이전틱 프레임워크를 이용한 도구 사용 예제

다음은 다양한 에이전틱 프레임워크를 사용하여 도구 사용 디자인 패턴을 구현하는 예시입니다:
다음은 다양한 에이전틱 프레임워크를 사용하여 도구 사용 설계 패턴을 구현하는 예시입니다:

### Microsoft 에이전트 프레임워크

Expand Down Expand Up @@ -293,7 +293,7 @@ agent = project_client.agents.create_agent(
)
```

## 신뢰할 수 있는 AI 에이전트를 구축하기 위해 도구 사용 디자인 패턴을 사용할 때의 특별한 고려사항은 무엇인가?
## 신뢰할 수 있는 AI 에이전트를 구축하기 위해 도구 사용 설계 패턴을 사용할 때의 특별한 고려사항은 무엇인가?

LLM이 동적으로 생성한 SQL에 대한 일반적인 우려는 보안 문제이며, 특히 SQL 인젝션이나 데이터베이스를 삭제하거나 변조하는 악의적 행위의 위험이 있습니다. 이러한 우려는 데이터베이스 접근 권한을 적절히 구성하면 효과적으로 완화할 수 있습니다. 대부분 데이터베이스에서는 읽기 전용으로 설정하는 것이 여기에 해당합니다. PostgreSQL 또는 Azure SQL과 같은 데이터베이스 서비스에서는 앱에 읽기 전용(SELECT) 역할을 할당해야 합니다.

Expand All @@ -304,7 +304,7 @@ LLM이 동적으로 생성한 SQL에 대한 일반적인 우려는 보안 문제
- Python: [에이전트 프레임워크](./code_samples/04-python-agent-framework.ipynb)
- .NET: [에이전트 프레임워크](./code_samples/04-dotnet-agent-framework.md)

## 도구 사용 디자인 패턴에 대해 더 궁금한 점이 있나요?
## 도구 사용 설계 패턴에 대해 더 궁금한 점이 있나요?

[Microsoft Foundry Discord](https://aka.ms/ai-agents/discord)에 참여하여 다른 학습자와 만나고, 오피스 아워에 참석하며, AI 에이전트 관련 질문에 답변을 받아보세요.

Expand All @@ -316,7 +316,7 @@ LLM이 동적으로 생성한 SQL에 대한 일반적인 우려는 보안 문제

## 이전 수업

[에이전틱 디자인 패턴 이해하기](../03-agentic-design-patterns/README.md)
[에이전틱 설계 패턴 이해하기](../03-agentic-design-patterns/README.md)

## 다음 수업
[Agentic RAG](../05-agentic-rag/README.md)
Expand All @@ -326,4 +326,4 @@ LLM이 동적으로 생성한 SQL에 대한 일반적인 우려는 보안 문제
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**면책 조항**:
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 기하기 위해 노력하고 있으나, 자동 번역은 오류나 부정확한 부분이 있을 수 있음을 유의하시기 바랍니다. 원본 문서의 원어본이 권위 있는 자료로 간주되어야 합니다. 중요한 정보의 경우, 전문가의 인간 번역을 권장합니다. 이 번역 사용으로 인해 발생하는 오해나 잘못된 해석에 대해 당사는 책임을 지지 않습니다.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
6 changes: 3 additions & 3 deletions translations/ko/05-agentic-rag/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Agentic Retrieval-Augmented Generation(에이전트형 RAG)은 LLM이 외부 데
에이전트형 RAG의 자율성은 또한 강력한 자기 수정 메커니즘을 포함합니다. 시스템이 관련 없는 문서를 검색하거나 잘못된 쿼리를 만나는 등 막다른 길에 부딪힐 때, 다음을 수행할 수 있습니다:

- **반복 및 재쿼리:** 낮은 가치의 응답을 반환하는 대신, 모델은 새로운 검색 전략을 시도하거나 데이터베이스 쿼리를 다시 작성하거나 대체 데이터 세트를 살펴봅니다.
- **진단 도구 사용:** 시스템은 자기 추론 단계를 디버그하거나 검색된 데이터의 정확성을 확인하는 데 도움이 되는 추가 함수를 호출할 수 있습니다. Azure AI Tracing과 같은 도구는 강력한 관찰성 및 모니터링을 가능하게 하는 데 중요합니다.
- **진단 도구 사용:** 시스템은 자기 추론 단계를 디버그하거나 검색된 데이터의 정확성을 확인하는 데 도움이 되는 추가 함수를 호출할 수 있습니다. Azure AI Tracing과 같은 도구는 강력한 관찰 가능성 및 모니터링을 가능하게 하는 데 중요합니다.
- **인간 감독에 의존:** 중요도가 높거나 반복적으로 실패하는 시나리오의 경우, 모델은 불확실성을 표시하고 인간의 지침을 요청할 수 있습니다. 인간이 수정 피드백을 제공하면 모델은 향후 세션에서 그 교훈을 통합할 수 있습니다.

이러한 반복적이고 동적 접근 방식은 모델이 지속적으로 개선되도록 하여, 단발성 시스템이 아니라 해당 세션에서의 실수로부터 학습하는 시스템이 되도록 합니다.
Expand Down Expand Up @@ -138,7 +138,7 @@ Agentic Retrieval-Augmented Generation(에이전트형 RAG)은 LLM이 외부 데

## 이전 레슨

[도구 사용 디자인 패턴](../04-tool-use/README.md)
[도구 사용 설계 패턴](../04-tool-use/README.md)

## 다음 레슨

Expand All @@ -149,4 +149,4 @@ Agentic Retrieval-Augmented Generation(에이전트형 RAG)은 LLM이 외부 데
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
면책 조항:
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 위해 노력하고 있으나 자동 번역에는 오류나 부정확성이 포함될 수 있음을 유의하시기 바랍니다. 원문(원어) 문서를 권위 있는 출처로 간주하시기 바랍니다. 중요한 정보의 경우 전문적인 인간 번역을 권장합니다. 본 번역의 사용으로 인해 발생하는 어떠한 오해나 오해의 소지에 대해서도 당사는 책임을 지지 않습니다.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ await foreach (var document in documentStream.AsAsyncEnumerable())

## 🚀 프로덕션 배포

### 모니터링 및 관찰성
### 모니터링 및 관찰 가능성
- **Application Insights**: 상세한 원격 분석 및 성능 모니터링
- **사용자 정의 지표**: 비즈니스별 KPI 추적 및 경고
- **분산 추적**: 서비스 간 요청의 종단 간 추적
Expand Down Expand Up @@ -218,4 +218,4 @@ dotnet run 05-dotnet-agent-framework.cs
---

**면책 조항**:
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 위해 최선을 다하고 있지만, 자동 번역에는 오류나 부정확성이 포함될 수 있습니다. 원본 문서의 원어 버전을 권위 있는 출처로 간주해야 합니다. 중요한 정보의 경우, 전문적인 인간 번역을 권장합니다. 이 번역 사용으로 인해 발생하는 오해나 잘못된 해석에 대해 책임을 지지 않습니다.
이 문서는 AI 번역 서비스 [Co-op Translator](https://github.com/Azure/co-op-translator)를 사용하여 번역되었습니다. 정확성을 위해 최선을 다하고 있지만, 자동 번역에는 오류나 부정확성이 포함될 수 있습니다. 원본 문서의 원어 버전을 권위 있는 출처로 간주해야 합니다. 중요한 정보의 경우, 전문적인 인간 번역을 권장합니다. 이 번역 사용으로 인해 발생하는 오해나 잘못된 해석에 대해 책임을 지지 않습니다.
Loading
Loading