Skip to content

Commit

Permalink
fix broken paths
Browse files Browse the repository at this point in the history
  • Loading branch information
jpark011 committed Sep 30, 2024
1 parent 18e7e9d commit bfbc20c
Show file tree
Hide file tree
Showing 7 changed files with 43 additions and 50 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,7 @@ Link to a copy of that Notebook with the prompts filled in and run, showing what

### 다음으로, 환경 변수를 구성하세요

- 레포지토리 루트에 있는 `.env.copy` 파일을 `.env`로 복사하고 `AZURE_OPENAI_API_KEY`, `AZURE_OPENAI_ENDPOINT`, `AZURE_OPENAI_DEPLOYMENT` 값을 채워넣으세요. [Learning Sandbox section](./04-prompt-engineering-fundamentals#learning-sandbox)에서 자세한 내용을 확인하세요.
- 레포지토리 루트에 있는 `.env.copy` 파일을 `.env`로 복사하고 `AZURE_OPENAI_API_KEY`, `AZURE_OPENAI_ENDPOINT`, `AZURE_OPENAI_DEPLOYMENT` 값을 채워넣으세요. [Learning Sandbox section](../../04-prompt-engineering-fundamentals#learning-sandbox)에서 자세한 내용을 확인하세요.

### 다음으로, Jupyter Notebook을 열어보세요

Expand Down
8 changes: 4 additions & 4 deletions 13-securing-ai-applications/translations/ko/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 생성형 AI 애플리케이션 보안

[![생성형 AI 애플리케이션 보안](./images/13-lesson-banner.png?WT.mc_id=academic-105485-koreyst)](https://aka.ms/gen-ai-lesson13-gh?WT.mc_id=academic-105485-koreyst)
[![생성형 AI 애플리케이션 보안](../../images/13-lesson-banner.png?WT.mc_id=academic-105485-koreyst)](https://aka.ms/gen-ai-lesson13-gh?WT.mc_id=academic-105485-koreyst)

## 소개

Expand Down Expand Up @@ -72,7 +72,7 @@ Microsoft Cloud Advocate Rod Trent는 이러한 신흥 AI 위협에 대해 깊
- **모델 검증**: 이는 AI 시스템 또는 LLM의 모델 매개변수 또는 아키텍처의 정확성과 완전성을 검증하는 과정입니다. 모델 검증은 모델이 보호되고 인증되어 모델 도난을 방지하는지 확인하는 데 도움이 됩니다.
- **출력 검증**: 이는 AI 시스템 또는 LLM의 출력 품질과 신뢰성을 검증하는 과정입니다. 출력 검증은 출력이 일관되고 정확한지 확인하여 악의적 조작을 감지하고 수정하는 데 도움이 됩니다.

OpenAI는 첨단 AI 시스템의 선두 주자로, AI 안전에 기여하고자 하는 목표로 붉은 팀 네트워크 이니셔티브의 일환으로 일련의 _안전 평가_를 설정했습니다. 이 평가는 AI 시스템의 출력을 테스트하기 위한 것입니다.
OpenAI는 첨단 AI 시스템의 선두 주자로, AI 안전에 기여하고자 하는 목표로 붉은 팀 네트워크 이니셔티브의 일환으로 일련의 *안전 평가* 설정했습니다. 이 평가는 AI 시스템의 출력을 테스트하기 위한 것입니다.

> 평가의 범위는 간단한 Q&A 테스트에서 더 복잡한 시뮬레이션까지 다양할 수 있습니다. 다음은 다양한 각도에서 AI 행동을 평가하기 위해 OpenAI가 개발한 샘플 평가의 구체적인 예입니다:
Expand Down Expand Up @@ -123,7 +123,7 @@ LLM은 사용하는 데이터의 프라이버시와 보안에 위험을 초래

> AI 레드 팀 실행의 의미는 진화하여 더 확장된 의미를 가지게 되었습니다: 이는 보안 취약점을 탐색하는 것뿐만 아니라 잠재적으로 해로운 콘텐츠 생성을 포함한 다른 시스템 실패를 탐색하는 것도 포함합니다. AI 시스템은 새로운 위험을 가지고 있으며, 레드 팀은 프롬프트 주입 및 기반 없는 콘텐츠 생성과 같은 새로운 위험을 이해하는 데 중요합니다. - [Microsoft AI 레드 팀이 더 안전한 AI의 미래를 구축](https://www.microsoft.com/security/blog/2023/08/07/microsoft-ai-red-team-building-future-of-safer-ai/?WT.mc_id=academic-105485-koreyst)
[![레드 팀에 대한 지침 및 리소스](./images/13-AI-red-team.png?WT.mc_id=academic-105485-koreyst)]()
[![레드 팀에 대한 지침 및 리소스](../../images/13-AI-red-team.png?WT.mc_id=academic-105485-koreyst)]()

아래는 Microsoft의 AI 레드 팀 프로그램을 형성한 주요 통찰입니다.

Expand Down Expand Up @@ -161,4 +161,4 @@ AI 시대에 민감한 정보를 [관리하고 보호하는 방법](https://lear

이 레슨을 완료한 후 [Generative AI 학습 컬렉션](https://aka.ms/genai-collection?WT.mc_id=academic-105485-koreyst)을 확인하여 Generative AI 지식을 계속 향상시키세요!

Lesson 14로 이동하여 [생성형 AI 애플리케이션 수명 주기](../14-the-generative-ai-application-lifecycle/README.md?WT.mc_id=academic-105485-koreyst)를 살펴보세요!
Lesson 14로 이동하여 [생성형 AI 애플리케이션 수명 주기](../../../14-the-generative-ai-application-lifecycle/README.md?WT.mc_id=academic-105485-koreyst)를 살펴보세요!
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ LLM은 인공지능 무기고의 새로운 도구로서, 응용 프로그램의

이와 함께, 우리는 동적으로 이 도구를 적응시키기 위한 새로운 패러다임이 필요합니다. 적절한 인센티브로 말이죠. 이전의 AI 애플리케이션은 "ML 애플리케이션"으로, 새로운 AI 애플리케이션은 "GenAI 애플리케이션" 또는 단순히 "AI 애플리케이션"으로 분류할 수 있는데, 이는 당시에 사용된 주류 기술과 기법을 반영합니다. 이는 여러 방식으로 우리 내러티브를 변화시킵니다. 다음 비교를 살펴보세요.

![LLMOps vs. MLOps 비교](./images/01-llmops-shift.png?WT.mc_id=academic-105485-koreys)
![LLMOps vs. MLOps 비교](../../images/01-llmops-shift.png?WT.mc_id=academic-105485-koreys)

LLMOps에서는 앱 개발자에 더욱 초점을 맞추고, 통합을 주요 포인트로 사용하며 "서비스로서의 모델(Models-as-a-Service)"을 사용하고 지표를 다음과 같이 생각합니다.

Expand All @@ -33,7 +33,7 @@ LLMOps에서는 앱 개발자에 더욱 초점을 맞추고, 통합을 주요

먼저, 라이프사이클과 그 변화를 이해하기 위해 다음 인포그래픽을 참고하세요.

![LLMOps infographic](./images/02-llmops.png?WT.mc_id=academic-105485-koreys)
![LLMOps infographic](../../images/02-llmops.png?WT.mc_id=academic-105485-koreys)

보시다시피, 이것은 일반적인 MLOps 라이프사이클과 다릅니다. LLM은 프롬프트 엔지니어링, 품질 향상을 위한 다양한 기법 (Fine-Tuning, RAG, Meta-Prompts), 책임 있는 AI와의 평가 및 책임 등 여러 새로운 요구 사항이 있습니다. 마지막으로, 새로운 평가 지표 (품질, 해악, 정직성, 비용 및 지연)가 있습니다.

Expand All @@ -43,7 +43,7 @@ LLMOps에서는 앱 개발자에 더욱 초점을 맞추고, 통합을 주요

이 단계를 탐색하려면 어떻게 해야 할까요? 라이프사이클을 구축하는 방법에 대해 자세히 살펴보겠습니다.

![LLMOps Workflow](./images/03-llm-stage-flows.png?WT.mc_id=academic-105485-koreys)
![LLMOps Workflow](../../images/03-llm-stage-flows.png?WT.mc_id=academic-105485-koreys)

이것은 약간 복잡해 보일 수 있습니다. 먼저 세 가지 큰 단계에 집중해 보겠습니다.

Expand All @@ -63,24 +63,22 @@ LLMOps에서는 앱 개발자에 더욱 초점을 맞추고, 통합을 주요

[Azure AI Platform](https://azure.microsoft.com/solutions/ai/?WT.mc_id=academic-105485-koreys)[AI Studio](https://ai.azure.com/?WT.mc_id=academic-105485-koreys)를 사용할 수 있게 합니다. AI Studio는 다양한 모델, 샘플, 도구 등을 탐색할 수 있는 웹 포털입니다. 자원을 관리하고, UI 개발 흐름과 코드-중심 개발을 위한 SDK/CLI 옵션을 포함합니다.

![Azure AI 가능성](./images/04-azure-ai-platform.png?WT.mc_id=academic-105485-koreys)
![Azure AI 가능성](../../images/04-azure-ai-platform.png?WT.mc_id=academic-105485-koreys)

Azure AI는 여러 자원을 사용하여 운영, 서비스, 프로젝트, 벡터 검색 및 데이터베이스 필요를 관리할 수 있게 합니다.

![LLMOps with Azure AI](./images/05-llm-azure-ai-prompt.png?WT.mc_id=academic-105485-koreys)
![LLMOps with Azure AI](../../images/05-llm-azure-ai-prompt.png?WT.mc_id=academic-105485-koreys)

PromptFlow와 함께 개념 증명(Proof-of-Concept, POC)에서 대규모 애플리케이션까지 구축:

- VS Code에서 시각적이고 기능적인 도구를 사용하여 앱을 설계하고 빌드
- 품질 높은 AI를 위해 앱을 쉽게 테스트하고 조정
- 클라우드와 통합하고 반복하기 위해 Azure AI Studio를 사용하고, 신속한 통합을 위해 Push 및 Deploy

![LLMOps with PromptFlow](./images/06-llm-promptflow.png?WT.mc_id=academic-105485-koreys)


![LLMOps with PromptFlow](../../images/06-llm-promptflow.png?WT.mc_id=academic-105485-koreys)

## 훌륭합니다! 학습을 계속하세요!

놀랍습니다! 이제 [Contoso Chat App](https://nitya.github.io/contoso-chat/?WT.mc_id=academic-105485-koreyst)을 통해 애플리케이션을 구조화하여 개념을 사용하는 방법을 배우고, Cloud Advocacy가 이러한 개념을 데모에 추가하는 방식을 확인하세요. 더 많은 콘텐츠를 보려면 [Ignite 분과 세션](https://www.youtube.com/watch?v=DdOylyrTOWg)을 확인하세요!

이제 Lesson 15를 확인하여 [Retrieval Augmented Generation 및 벡터 데이터베이스](../15-rag-and-vector-databases/README.md?WT.mc_id=academic-105485-koreyst)가 생성 AI에 미치는 영향과 보다 흥미로운 애플리케이션을 만드는 방법을 이해하세요!
이제 Lesson 15를 확인하여 [Retrieval Augmented Generation 및 벡터 데이터베이스](../../../15-rag-and-vector-databases/README.md?WT.mc_id=academic-105485-koreyst)가 생성 AI에 미치는 영향과 보다 흥미로운 애플리케이션을 만드는 방법을 이해하세요!
15 changes: 7 additions & 8 deletions 15-rag-and-vector-databases/translations/ko/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 검색 증강 생성 (RAG) 및 벡터 데이터베이스

[![검색 증강 생성 (RAG) 및 벡터 데이터베이스](./images/15-lesson-banner.png?WT.mc_id=academic-105485-koreyst)](https://aka.ms/gen-ai-lesson15-gh?WT.mc_id=academic-105485-koreyst)
[![검색 증강 생성 (RAG) 및 벡터 데이터베이스](../../images/15-lesson-banner.png?WT.mc_id=academic-105485-koreyst)](https://aka.ms/gen-ai-lesson15-gh?WT.mc_id=academic-105485-koreyst)

검색 응용 프로그램 수업에서는 대규모 언어 모델(LLM)에 사용자의 데이터를 통합하는 방법을 간략히 배웠습니다. 이번 수업에서는 LLM 응용 프로그램에 데이터를 결합하는 개념, 프로세스의 메커니즘 및 임베딩과 텍스트를 포함한 데이터 저장 방법에 대해 더 자세히 알아보겠습니다.

Expand Down Expand Up @@ -42,7 +42,7 @@ LLM 기반 챗봇은 사용자 프롬프트를 처리하여 응답을 생성합

### RAGs (검색 증강 생성)이 작동하는 방식

![RAGs가 작동하는 방식을 보여주는 그림](images/how-rag-works.png?WT.mc_id=academic-105485-koreyst)
![RAGs가 작동하는 방식을 보여주는 그림](../../images/how-rag-works.png?WT.mc_id=academic-105485-koreyst)

예를 들어, 노트에서 퀴즈를 생성하는 챗봇을 배포하려면 지식 기반과의 연결이 필요합니다. 이때 RAG가 그 해결책이 됩니다. RAG는 다음과 같이 작동합니다:

Expand All @@ -54,7 +54,7 @@ LLM 기반 챗봇은 사용자 프롬프트를 처리하여 응답을 생성합

- **증강 생성:** LLM은 검색된 데이터를 기반으로 응답을 개선합니다. 이는 미리 학습된 데이터뿐만 아니라 추가된 컨텍스트의 관련 정보에 기반하여 응답을 생성할 수 있게 합니다. 검색된 데이터는 LLM의 응답을 증강시키는 데 사용됩니다. LLM은 그런 다음 사용자의 질문에 대한 답을 반환합니다.

![RAGs 아키텍처를 보여주는 그림](images/encoder-decode.png?WT.mc_id=academic-105485-koreyst)
![RAGs 아키텍처를 보여주는 그림](../../images/encoder-decode.png?WT.mc_id=academic-105485-koreyst)

RAGs의 아키텍처는 인코더와 디코더의 두 부분으로 구성된 트랜스포머를 사용해 구현됩니다. 예를 들어, 사용자가 질문을 하면 입력 텍스트는 단어의 의미를 포착하는 벡터로 '인코딩'되고, 이 벡터는 문서 인덱스로 '디코딩'되어 사용자 쿼리에 기반하여 새로운 텍스트를 생성합니다. LLM은 출력 생성을 위해 인코더-디코더 모델을 모두 사용합니다.

Expand All @@ -72,7 +72,6 @@ RAGs의 아키텍처는 인코더와 디코더의 두 부분으로 구성된 트

- LLM을 미세 조정하는 것과 비교했을 때 **비용 효율성**이 높아 경제적입니다.


## 지식 기반 만들기

우리의 애플리케이션은 개인 데이터, 즉 AI For Beginners 커리큘럼의 신경망 수업을 기반으로 합니다.
Expand Down Expand Up @@ -118,7 +117,7 @@ def split_text(text, max_length, min_length):
청크로 나눈 후에는 다양한 임베딩 모델을 사용하여 텍스트를 임베딩할 수 있습니다. 사용할 수 있는 모델에는 word2vec, OpenAI의 ada-002, Azure Computer Vision 등 다양한 모델이 있습니다. 사용할 모델을 선택할 때는 사용하는 언어, 인코딩된 콘텐츠 유형(텍스트/이미지/오디오), 인코딩할 수 있는 입력 크기 및 임베딩 출력 길이를 고려해야 합니다.

OpenAI의 `text-embedding-ada-002` 모델을 사용하여 텍스트를 임베딩한 예는 다음과 같습니다:
![고양이 단어의 임베딩](images/cat.png?WT.mc_id=academic-105485-koreyst)
![고양이 단어의 임베딩](../../images/cat.png?WT.mc_id=academic-105485-koreyst)

## 검색 및 벡터 검색

Expand Down Expand Up @@ -170,7 +169,7 @@ distances, indices = nbrs.kneighbors(embeddings)

데이터베이스에 쿼리한 후에는 가장 관련성 있는 결과부터 정렬해야 할 수도 있습니다. 재랭킹 LLM은 기계 학습을 활용하여 검색 결과의 관련성을 개선하고 가장 관련성 있는 결과부터 정렬합니다. Azure AI Search를 사용하면, 의미론적 재랭커를 통해 자동으로 재랭킹이 수행됩니다. 가장 가까운 이웃을 사용한 재랭킹의 예:

```python
````python

# 가장 유사한 문서 찾기
distances, indices = nbrs.kneighbors([query_vector])
Expand Down Expand Up @@ -228,7 +227,7 @@ def chatbot(user_input):
return response.choices[0].message

chatbot(user_input)
```
````

## 애플리케이션 평가하기

Expand Down Expand Up @@ -267,4 +266,4 @@ chatbot(user_input)

## 학습은 여기서 끝나지 않습니다, 여정을 계속하세요

이 수업을 완료한 후, [Generative AI 학습 컬렉션](https://aka.ms/genai-collection?WT.mc_id=academic-105485-koreyst)을 확인하여 생성형 AI 지식을 계속해서 향상시켜보세요!
이 수업을 완료한 후, [Generative AI 학습 컬렉션](https://aka.ms/genai-collection?WT.mc_id=academic-105485-koreyst)을 확인하여 생성형 AI 지식을 계속해서 향상시켜보세요!
13 changes: 5 additions & 8 deletions 16-open-source-models/translations/ko/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## 소개

오픈 소스 LLM의 세계는 흥미롭고 끊임없이 진화하고 있습니다. 이 강의는 오픈 소스 모델에 대한 심층적인 정보를 제공하는 것을 목표로 합니다. 독점 모델과 오픈 소스 모델을 비교하는 정보가 필요하다면 ["다양한 LLM 탐색 및 비교" 강의](../02-exploring-and-comparing-different-llms/README.md?WT.mc_id=academic-105485-koreyst)를 참조하세요. 이 강의에서는 모델의 미세 조정(fine-tuning)에 대한 내용도 다룰 예정이지만, 보다 자세한 설명은 ["LLM 미세 조정" 강의](../18-fine-tuning/README.md?WT.mc_id=academic-105485-koreyst)를 참조하세요.
오픈 소스 LLM의 세계는 흥미롭고 끊임없이 진화하고 있습니다. 이 강의는 오픈 소스 모델에 대한 심층적인 정보를 제공하는 것을 목표로 합니다. 독점 모델과 오픈 소스 모델을 비교하는 정보가 필요하다면 ["다양한 LLM 탐색 및 비교" 강의](../../../02-exploring-and-comparing-different-llms/README.md?WT.mc_id=academic-105485-koreyst)를 참조하세요. 이 강의에서는 모델의 미세 조정(fine-tuning)에 대한 내용도 다룰 예정이지만, 보다 자세한 설명은 ["LLM 미세 조정" 강의](../../../18-fine-tuning/README.md?WT.mc_id=academic-105485-koreyst)를 참조하세요.

## 학습 목표

Expand Down Expand Up @@ -30,24 +30,21 @@ LLM의 개발은 소프트웨어 개발과 유사한 요소를 가지고 있지

**비용** - 이러한 모델을 사용하고 배포하는 데 드는 토큰당 비용은 독점 모델보다 낮습니다. 생성형 AI 애플리케이션을 구축할 때, 이러한 모델을 사용하는 경우 성능 대비 가격을 고려해야 합니다.

![모델 비용](./images/model-price.png?WT.mc_id=academic-105485-koreyst)
![모델 비용](../../images/model-price.png?WT.mc_id=academic-105485-koreyst)
출처: Artificial Analysis

**유연성** - 오픈 모델을 사용하면 다양한 모델을 사용하거나 결합하여 유연하게 작업할 수 있습니다. 예를 들어, 사용자가 사용자 인터페이스에서 직접 사용되는 모델을 선택할 수 있는 [HuggingChat Assistants](https://huggingface.co/chat?WT.mc_id=academic-105485-koreyst)가 있습니다.

![모델 선택](./images/choose-model.png?WT.mc_id=academic-105485-koreyst)
![모델 선택](../../images/choose-model.png?WT.mc_id=academic-105485-koreyst)

## 다양한 개방형 모델 탐구



### Llama 2

[LLama2](https://huggingface.co/meta-llama?WT.mc_id=academic-105485-koreyst)는 Meta에서 개발한 오픈 모델로, 채팅 기반 응용 프로그램에 최적화되어 있습니다. 이는 대화 및 인간 피드백을 대량으로 포함한 미세 조정 방법 덕분입니다. 이 방법을 통해 모델은 인간의 기대에 더 부합하는 결과를 생성하여 더 나은 사용자 경험을 제공합니다.

Llama의 미세 조정 버전의 예로는 일본어에 특화된 [Japanese Llama](https://huggingface.co/elyza/ELYZA-japanese-Llama-2-7b?WT.mc_id=academic-105485-koreyst)와 기본 모델의 향상된 버전인 [Llama Pro](https://huggingface.co/TencentARC/LLaMA-Pro-8B?WT.mc_id=academic-105485-koreyst) 등이 있습니다.


### 미스트랄 (Mistral)

[Mistral](https://huggingface.co/mistralai?WT.mc_id=academic-105485-koreyst)는 높은 성능과 효율성에 중점을 둔 오픈 모델입니다. 이 모델은 전문가 모델 집합을 하나의 시스템으로 결합하는 Mixture-of-Experts 접근 방식을 사용합니다. 입력에 따라 특정 모델이 선택되어 사용되기 때문에, 계산이 더 효과적입니다. 즉, 각 모델이 자신이 전문화된 입력에만 대응하게 합니다.
Expand All @@ -66,7 +63,7 @@ Llama의 미세 조정 버전의 예로는 일본어에 특화된 [Japanese Llam

LLM을 여러 유형별로 비교할 때, [Artificial Analysis](https://artificialanalysis.ai/?WT.mc_id=academic-105485-koreyst)도 또 다른 훌륭한 자원입니다:

![모델 품질](./images/model-quality.png?WT.mc_id=academic-105485-koreyst)
![모델 품질](../../images/model-quality.png?WT.mc_id=academic-105485-koreyst)
출처: Artificial Analysis

특정 용도에 대한 작업을 진행할 때, 동일한 영역에 집중하여 미세 조정된 버전을 찾는 것이 효과적일 수 있습니다. 다양한 오픈 모델을 실험하여 자신과 사용자 기대에 부합하는지 확인하는 것도 좋은 방법입니다.
Expand All @@ -77,4 +74,4 @@ LLM을 여러 유형별로 비교할 때, [Artificial Analysis](https://artifici

## 학습은 여기서 멈추지 않습니다, 여정을 계속하세요

이 강의를 완료한 후, 우리의 [Generative AI 학습 컬렉션](https://aka.ms/genai-collection?WT.mc_id=academic-105485-koreyst)을 확인하고 생성형 AI 지식을 계속 향상시키세요!
이 강의를 완료한 후, 우리의 [Generative AI 학습 컬렉션](https://aka.ms/genai-collection?WT.mc_id=academic-105485-koreyst)을 확인하고 생성형 AI 지식을 계속 향상시키세요!
Loading

0 comments on commit bfbc20c

Please # to comment.