실습 ①: Excel × 지식 4가지 — 현실에서 무엇이 되고 무엇이 안 되는가
| 시간 | 소요 | 수강생 역할 |
|---|---|---|
| 14:25 | 15분 | 👀 시연 + 💬 토론 |
목차
- 이 실습의 목표
- 전체 맵: Excel 을 에이전트에 연결하는 길
- ① 대화 중 파일 첨부 — ❌ 사실상 동작하지 않음
- ② 지식에 직접 업로드 — 🟢 그럭저럭 쓸만 (조건부)
- ③ SharePoint 의 Excel 을 지식으로 — ❌ 절대 추천 불가
- ④ 커스텀 지식 소스 (NEW) — 🟡 새로운 네 번째 길
- 4가지 한 줄 결론
- 시연: 같은 질문, 4가지 답
- 의사결정 — 정리하면
- 다음 단계
이 실습의 목표
- 같은 Excel 을 지식(Knowledge) 으로 활용한다고 가정했을 때 흔히 떠오르는 4가지 길 의 현실 한계를 정직하게 본다
- 무엇이 안 된다 (① 채팅 첨부) / 그럭저럭 된다 (② 직접 업로드) / 하지 마라 (③ SharePoint 지식) / 새 길 (④ 커스텀 지식 소스) 인지 결론짓는다
- 다음 실습 ② (도구 3가지) 의 비교 기준 마련
이 페이지의 핵심 메시지 — “Excel 을 지식 칸에 욱여넣는 4가지 시나리오 중 3개는 추천 불가, 1개는 새로운 길”. 이 결론을 학습자가 직접 보고 수긍해야 다음 실습 ②(도구 칸) 의 가치가 살아납니다.
전체 맵: Excel 을 에이전트에 연결하는 길
지식으로 쓰기 (AI 가 읽고 해석) ← 이 실습 ①
┌───────────────────────────────────────────┐
│ ① 채팅 첨부 ② 직접 업로드 ③ SharePoint ④ 커스텀 KS │
│ (사실상 안 됨) (그럭저럭) (절대 비추) (새로운 길) │
└───────────────────────────────────────────┘
도구로 조회 (흐름이 데이터를 가져옴) ← 실습 ②
┌───────────────────────────────────────────┐
│ Excel 커넥터 / CSV+AI / Office Script │
└───────────────────────────────────────────┘
구조를 바꾸기 (Excel 졸업) ← 실습 ② 후반
┌───────────────────────────────────────────┐
│ SP 리스트 / Dataverse │
└───────────────────────────────────────────┘
이 페이지는 윗줄 — 지식 4가지 를 정직하게 평가합니다.
① 대화 중 파일 첨부 — ❌ 사실상 동작하지 않음
사전 설정 없이 사용자가 대화 중 Excel 파일을 드래그&드롭하는 시나리오.
| 항목 | 현실 |
|---|---|
| 기대 | “이 Excel 분석해줘” + 파일 첨부 → AI 가 내용을 읽고 답변 |
| 현실 | Copilot Studio 의 기본 채팅 첨부는 Excel 의 정형 데이터를 안정적으로 읽어주지 못합니다. PDF 같은 비정형 텍스트는 그럭저럭 되지만, 행/열 구조가 있는 Excel 은 무시·일부만 인식·환각이 빈번합니다. |
이 한계 때문에 오전 S2 — 엑셀 업로드 활용 실습 가 만들어졌습니다. 그쪽은 다음 세 길로 우회합니다 — 토픽 + 질문 노드 + Excel Table (메인), 흐름 + 엑셀 커넥터 + OData 필터 (코드 없이), 또는 흐름 + Office Script + AI 프롬프트 (심화). 즉, “사전 설정 없이 채팅에 Excel 을 그냥 던지면 AI 가 알아서 분석” 은 강의 내내 시도하지 말 것 으로 일관됩니다.
| 결론 | “되면 좋겠지만 안 되니까, 다른 길을 찾는다” — 이 실습은 그 다른 길들을 본다 |
② 지식에 직접 업로드 — 🟢 그럭저럭 쓸만 (조건부)
에이전트 빌더에서 지식 → 파일 업로드 로 Excel 을 등록.
| 항목 | 내용 |
|---|---|
| 동작 | Copilot Studio 의 인덱서가 Excel 의 시트·행·열 구조를 보존 한 채 인덱싱해 줍니다. 단순 조회는 의외로 잘 됩니다. |
| 잘 맞는 데이터 | 직원 명단·업무 담당자 정보·부서별 연락처 처럼 거의 안 바뀌고 행 수가 적은 (수십~수백 행) 참조용 표 |
| 결정적 단점 | MIP(민감도) 암호화된 파일은 업로드해도 내용 참조가 되지 않습니다. 보안이 걸린 사내 자료는 이 길로 못 옵니다. |
| 그 외 한계 | 파일이 바뀌면 재업로드, 용량 제한, “정확히 N번째 행” 같은 정밀 조회는 약함 |
| 결론 | 암호화 안 걸린 작은 참조 표 라면 이 길이 가장 빠르고 깔끔합니다. |
직원 명단 (이름·부서·내선·이메일) 같은 단순 표라면 ② 만으로도 “OO 부서 담당자 누구야?” 류 질문에 충분히 답합니다. 무리하게 도구화하지 마세요.
③ SharePoint 의 Excel 을 지식으로 — ❌ 절대 추천 불가
기존 강의에서 “SP 파일” 과 “SP 폴더” 두 가지로 분리해 다뤘지만, 현실에서는 한 가지 입니다. 둘 다 같은 치명적 문제를 공유합니다.
| 항목 | 내용 |
|---|---|
| 시도되는 방식 | SharePoint 라이브러리에 올린 Excel 파일/폴더를 지식 소스로 연결 |
| 치명적 문제 | SharePoint 경유로 Excel 이 지식 인덱서로 들어갈 때 시트·행·열의 구조적 정보가 소실 됩니다. 사실상 “셀 텍스트를 일렬로 흩뿌린 평문 더미” 가 됩니다. |
| 결과 | 심각한 품질 저하. “운영 환경 Linux 서버” 같은 단순 필터링조차 누락·환각 발생 빈도가 매우 높음. |
| 결론 | 하지 마세요. 이 길은 강의에서 “되긴 된다” 로 보여주는 의미 자체가 학습자에게 잘못된 신호를 줍니다. ② 와 합쳐 한 줄로만 처리. |
“SP 파일” / “SP 폴더” 는 별도의 길이 아닙니다. 두 개 모두 같은 인덱서·같은 한계·같은 결론입니다. 분리해서 가르칠 가치가 없습니다.
④ 커스텀 지식 소스 (NEW) — 🟡 새로운 네 번째 길
Microsoft 가 가이드한 OnKnowledgeRequested 트리거 기반 커스텀 지식 소스. 토픽 트리거 + 에이전트 흐름 + Office Script 를 조합해 “지식 칸의 빈자리” 를 새로 만듭니다.
무엇이 다른가
| 일반 지식 (① ② ③) | 커스텀 지식 소스 (④) |
|---|---|
| 인덱서가 자동으로 데이터를 빨아들임 | 내가 검색 백엔드를 직접 호출 |
| 인덱싱 결과에만 의존 | 흐름·스크립트로 정확한 검색 수행 |
| 구조 정보 소실 가능 | Office Script 가 Excel 구조 그대로 쿼리 |
동작 흐름 (개념)
사용자 발화
↓
오케스트레이터: "지식이 필요해" 판단
↓
④ 커스텀 지식 소스 토픽 (OnKnowledgeRequested 트리거)
↓ System.SearchQuery, System.KeywordSearchQuery 받음
에이전트 흐름 호출 → Office Script 가 Excel 읽기/필터
↓
결과를 System.SearchResults 에 { Content, ContentLocation, Title } 형태로 채움
↓
오케스트레이터가 그 결과로 자연어 답 생성
핵심 골격 (참고만)
OnKnowledgeRequested 트리거 토픽은 코드 뷰(YAML) 에서만 만들 수 있습니다. 비주얼 디자이너 지원 없음.
kind: AdaptiveDialog
beginDialog:
kind: OnKnowledgeRequested
id: main
intent: {}
actions:
# 1) 에이전트 흐름 (또는 Office Script) 호출 → 검색 결과 받기
# 2) 결과를 System.SearchResults 형식으로 변환 (ForAll)
# 각 항목: { Content: 스니펫, ContentLocation: URL, Title: 제목 }
inputType: {}
outputType: {}
시스템 변수 (이 토픽에서만 사용 가능)
| 변수 | 용도 |
|---|---|
System.SearchQuery |
의미 검색용으로 재작성된 쿼리 (대화 맥락 반영) |
System.KeywordSearchQuery |
키워드 검색용으로 재작성된 쿼리 |
System.SearchResults |
결과를 채워 넣을 변수 |
왜 Excel 시나리오에 흥미로운가
| 이유 | 설명 |
|---|---|
| 구조 보존 | Office Script 가 Excel 의 시트·행·열을 그대로 다룸 |
| 일관된 정답 | “운영 환경 Linux 서버” 같은 정밀 필터를 결정적으로 수행 |
| 인덱싱 지연 0 | Excel 이 바뀌면 다음 호출에서 즉시 반영 |
| MIP 암호화 우회 | Office Script 가 사용자 컨텍스트로 파일을 읽으므로, 인덱서가 막혀도 동작 가능 |
한계·주의
| 항목 | 내용 |
|---|---|
| 결과 개수 | Copilot Studio 는 System.SearchResults 의 최대 15개 스니펫 만 답에 활용 |
| 코드 뷰 필수 | YAML 편집 — 학습 곡선 있음 |
| 응답 스키마 | API/흐름이 반드시 Content / ContentLocation / Title 로 매핑되어야 함 |
| 다중 토픽 | 여러 OnKnowledgeRequested 토픽이 동시 호출 됨, 합쳐서 15개 제한 |
| 결론 | 시도해볼 가치가 큰 새 패턴 — 다음 강의/사내 PoC 에서 한 번 깊게 다뤄보면 좋다. 이번 실습 ① 에서는 “이런 길이 추가됐다” 까지만 인지. |
이 ④ 가 시사하는 바 — “지식 칸도 이제 흐름·스크립트로 직접 채울 수 있다.” 즉, “지식”·”도구” 의 경계가 흐려지는 새 패턴 입니다. S3 의 12 패턴 카탈로그 후속에 이 패턴이 자리 잡게 됩니다.
4가지 한 줄 결론
| 방식 | 한 줄 결론 | 등급 |
|---|---|---|
| ① 채팅 첨부 | 기본 기능으로는 사실상 동작 안 함 → 시도 X (S2 가 이래서 만들어짐) | ❌ |
| ② 직접 업로드 | 작고 안 바뀌는 참조 표 (직원 명단 등) 에는 그럭저럭. 단, MIP 암호화 파일은 못 씀 | 🟢 |
| ③ SharePoint 지식 | Excel 구조 소실로 심각한 품질 저하. 추천하지 말 것 (파일/폴더 차이 무의미) | ❌ |
| ④ 커스텀 지식 소스 | 토픽(OnKnowledgeRequested) + 흐름 + Office Script 로 직접 채움. 새로운 길 |
🟡 |
시연: 같은 질문, 4가지 답
강사가 동일한 Excel (사내 자산 대장 ~수백 행) 과 동일한 질문으로 4가지 길의 차이를 보여줍니다.
질문: “운영(LIVE) 환경 Linux 서버 목록 알려줘”
| 길 | 예상 결과 |
|---|---|
| ① 채팅 첨부 | “파일을 분석할 수 없습니다” 또는 환각 응답 (구조 인식 실패) |
| ② 직접 업로드 | 의미 검색 — 일부 누락, 정확히 몇 대인지 단언 못 함 |
| ③ SharePoint 지식 | ② 보다 더 흩뿌려진 결과, 사실상 사용 불가 |
| ④ 커스텀 지식 소스 | Office Script 가 정확히 필터 → 결정적·완전한 목록 |
의사결정 — 정리하면
Excel 을 에이전트에 붙이고 싶다
│
├─ 채팅 첨부로 즉석 분석? ─── 안 됨 → 시도 X
│
├─ 작고 안 바뀌는 참조 표 (직원 명단)?
│ ├─ MIP 암호화 안 됨 ──→ ② 직접 업로드 (충분)
│ └─ MIP 암호화 됨 ────→ ② 못 씀 → 도구 칸 (실습 ②) 으로
│
├─ SharePoint 의 Excel 을 지식으로? ── 추천 X (구조 소실)
│
├─ 정밀 필터·조회·갱신성 필요?
│ ├─ 흐름·스크립트 익숙 ──→ ④ 커스텀 지식 소스 (새 길)
│ └─ 그 외 ─────────────→ 🔧 도구 방식 (실습 ②)
│
└─ 데이터가 더 커지거나 공유 필요? ── Excel 졸업 (실습 ② 후반)
이번 실습의 진짜 결론 — “지식 칸은 ② (작은 참조 표) 또는 ④ (새 패턴) 만 살아남고, 나머지는 도구 칸 (실습 ②) 으로 가야 한다.”
다음 단계
실습 ② — Excel × 도구 3가지 비교 에서는 흐름이 Excel 을 직접 가져오는 3가지 와 Excel 졸업 옵션 을 봅니다.