[AI] Azure Foundry를 활용하여 업무 이슈 해석 및 처리 전략 제안 AI Agent 만들기

지난 포스팅에서 Azure Foundry에 대해 간략하게 소개했습니다.
[AI] Azure Foundry
[AI][Azure] Azure Foundry안녕하세요, 그동안 이것저것 실습은 계속 하고있었는데, 정리를 못하고있었다가 이번에 Azure AI Foundry 기반 실습을 진행하면서 해당 내용은 포스팅을 하면 좋겠다는 생각이
heywantodo.tistory.com
Azure AI Foundry가 어떤 성격인지의 플랫폼인지를 고민해보다가, 이걸 실제 업무에서 쓴다면 어떤 형태가 자연스러울까에 대해서 생각해보았습니다.
일반적인 RAG 예제들을 보면, 대부분이 질문 -> 문서검색 -> 답변생성의 흐름에 집중이 되어있습니다.
해당 방식은 실제 업무에 적용하려고 보면 몇 가지 아쉬운 점이 있었는데, 판단이나 우선 순위 정리가 필요한 상황에서는 적용을 하기가 어렵다는 점이었습니다.
예를 들어, 운영 이슈나 티켓을 다루는 상황에서는 "이게 뭐야?" 보다는 "지금 이걸 어떻게 처리하는게 제일 효율적이야?"가 더 중요한 질문이 됩니다.
이번 실습에서는 단순히 정보를 되돌려주는 RAG가 아니라, 상황을 해석하고 방향을 제안하는 형태를 목표로 잡았습니다.
구조
참고로 저는 30일 무료 크레딧 + 무료 체험 계정으로 진행을 했기 때문에, 리소스가 제한적이라는 점 참고 부탁 드립니다.
제가 구성한 아키텍처는 다음과 같습니다.
1. 업무 티켓 시스템 (Jira)
│ (pull)
▼
2. 수집/동기화 스크립트 또는 배치
- 티켓을 JSON으로 가져옴
- 필드 정규화
│ (upsert)
▼
3. Azure AI Search 인덱스
- 텍스트 검색/필터/정렬이 가능한 티켓 저장소
│ (tool query)
▼
4. Azure AI Foundry AI Agent
- 사용자의 질문을 이해
- Search 인덱스 조회
- 결과를 종합해서 요약 + 처리 전략 생성
│
▼
5. 사용자
해당 아키텍처를 기반으로 다음과 같이 구현을 진행했습니다.
데이터 준비
현재 업무 Jira 티켓을 가져오기엔 보안상으로 문제되는 부분을 필터링하거나 마스킹하는 작업이 별도로 필요하기때문에, 저는 임의의 JSON 데이터를 생성하였습니다.
[
{
"id": "PROJ-101",
"title": "로그인 실패율 증가",
"description": "지난 3일간 로그인 실패율이 5%에서 12%로 증가. Redis timeout 및 인증 서버 지연 의심.",
"priority": "High",
"status": "In Progress",
"assignee": "alice",
"updatedAt": "2025-12-10T10:00:00Z",
"tags": ["auth", "redis", "incident"]
},
{
"id": "PROJ-102",
"title": "결제 API 타임아웃",
"description": "일부 카드사에서 결제 요청 타임아웃 발생. 특정 PG사 또는 네트워크 문제 가능성.",
"priority": "Highest",
"status": "To Do",
"assignee": "bob",
"updatedAt": "2025-12-11T02:00:00Z",
"tags": ["payment", "api", "timeout"]
},
{
"id": "PROJ-103",
"title": "배치 작업 지연",
"description": "매일 새벽 3시에 돌아야 하는 배치 작업이 1시간 이상 지연되는 경우가 자주 발생.",
"priority": "Medium",
"status": "To Do",
"assignee": "alice",
"updatedAt": "2025-12-09T23:00:00Z",
"tags": ["batch", "performance"]
}
]
Azure AI Search 인덱스 구성
검색 레이어로는 Azure AI Search를 사용했습니다.
💡 Azure AI Search
Azure AI Search는 대규모 텍스트 데이터를 검색/필터링/정렬할 수 있는 Azure의 관리형 검색 서비스입니다.
벡터 검색과 함꼐 구조화된 필드 기반 검색을 동시에 지원해, 단순 유사도 검색을 넘어 조건 기반 데이터 조회가 가능합니다.
AI Agent나 애플리케이션에서 필요한 정보를 그때 그때 찾아 쓰는 데이터 레이어로 활용하기에 적합한 서비스입니다.
인덱스에는 단순 텍스트 검색만 가능한 구조가 아니라, 업무 판단에 필요한 조건들을 함께 사용할 수 있도록 다음과 같은 필드를 포함시켰습니다.

인덱스 생성이 완료되었으면, 임의 데이터를 넣어줍니다. 저는 일회성으로 하였지만 실제로 적용을 하려면 배치성으로 API를 받아와 스케줄마다 실행을 할 수 있도록 구성을하면 됩니다.
import json
from azure.search.documents import SearchClient
from azure.core.credentials import AzureKeyCredential
SEARCH_ENDPOINT = "https://"
SEARCH_KEY = "xxxxx"
SEARCH_INDEX = "tickets-indexs"
def load_tickets(path="ticket_sample.json"):
with open(path, "r", encoding="utf-8") as f:
return json.load(f)
def main():
tickets = load_tickets()
client = SearchClient(
endpoint=SEARCH_ENDPOINT,
index_name=SEARCH_INDEX,
credential=AzureKeyCredential(SEARCH_KEY),
)
#print(json.dumps(tickets, indent=2)[:2000]) # 앞부분만 출력
result = client.upload_documents(tickets)
print(f"Uploaded {len(result)} docs")
if __name__ == "__main__":
main()
Azure AI Foundry 프로젝트 및 Agent 생성
먼저 AI Foundry에서 AI Agent를 구성할 프로젝트를 생성했습니다.

Foundry는 Azure의 기본 콘솔이아닌 Foundry 전용 콘솔에서 Agent 구성이 가능합니다.
참고로 무료 계정의 경우 할당량이 eastus2 지역에 많이 배정이 되어있으므로, 해당 지역에 구성을 했습니다.
프로젝트 생성이 완료되었으면 Agent 생성을 해줍니다.
- 에이전트 이름 : ticket-insight-lab
- 배포 모델 : gpt-4.1 (version: 2025-04-14)
생성 시 설정에 지식이라는 옵션이 있습니다. 위에 생성 했던 index를 지식에 추가 해줍니다.

지식 연결이 완료되었으면 지침(prompt)을 작성해줍니다. Agent가 연결된 Search 인덱스를 조회하고 그 결과를 바탕으로 판단을 수행할 수 있도록 작성합니다.
Agent의 역할은 다음과 같습니다.
- 현재 이슈 상황을 요약
- 조건에 맞는 이슈를 조회
- 어떤 순서와 방식으로 처리하는 것이 효율적인지 제안
지침은 다음과 같이 작성해주었습니다.
너는 팀의 티켓/이슈를 분석해서
"현재 상황을 요약"하고
"어떻게 처리하면 효율적인지 전략"을 제안하는 업무 코치이다.
티켓 데이터는 Azure AI Search 인덱스를 통해 조회할 수 있다.
필드 예시: id, title, description, priority, status, assignee, updatedAt, tags
────────────────────────────────
[사용자 요청 유형]
────────────────────────────────
1) 상황 요약 요청
- 예: "지금 우리 팀 이슈 상황 정리해줘",
"최근 며칠간 중요한 이슈만 요약해줘"
해야 할 일:
- Search tool을 사용해 이슈를 조회한다.
- 우선순위(priority), 상태(status), 담당자(assignee) 기준으로 그룹핑한다.
- 전체적인 상태를 5~10줄로 요약한다.
2) 처리 전략/워크플로 요청
- 예: "효율적으로 처리하려면 어떤 순서로 진행하면 좋을까?",
"내가 맡은 이슈들을 어떤 방식으로 처리하면 좋을지 제안해줘"
해야 할 일:
- Search tool로 관련 이슈를 조회한다.
- assignee, priority, status, tags 등을 기준으로 필터링할 수 있다.
- 묶어서 처리 가능한 작업은 하나의 그룹으로 제안한다.
출력 형식:
[업무 처리 전략]
1) 먼저 해결해야 할 이슈 그룹 (공통 원인, 긴급도 기준)
2) 같이 묶어서 처리하면 좋은 작업 묶음 (예: 같은 서비스, 같은 모듈)
3) 오늘/이번 주에 처리 가능한 Action Item 단위
4) 효율을 높이기 위한 제안
────────────────────────────────
[검색 전략 규칙 – 중요]
────────────────────────────────
- "현황", "목록", "전체", "요약" 요청인 경우:
- 검색어로 문장을 사용하지 않는다.
- Search tool에서 반드시 search="*" 로 조회한다.
- 필요한 경우에만 filter, orderby 조건을 추가한다.
- id, title, priority, status, assignee 등은 출력 단계에서만 사용한다.
- 특정 이슈나 키워드가 명시된 경우:
- 사용자 입력에서 핵심 키워드만 추출하여 search에 사용한다.
- 컬럼명(id, title, priority 등)을 검색어로 사용하지 않는다.
- 검색 결과가 0건일 경우:
- filter 조건을 완화하거나 제거한 뒤 재검색한다.
- 그래도 없으면 search="*"로 재조회한 뒤 판단한다.
- 검색 결과 없이 추측으로 답변하지 않는다.
────────────────────────────────
[공통 규칙]
────────────────────────────────
- 항상 Search tool을 활용하여 실제 이슈 데이터를 조회한 뒤 판단한다.
- 검색 없이 답변을 생성하지 않는다.
- 단순 나열이 아니라, 왜 이런 순서와 전략이 좋은지 근거를 함께 설명한다.
- "캘린더 일정"이 아니라, 업무 처리 방식과 접근 전략에 집중한다.
- 답변은 한국어로 작성하되, 이슈 id는 그대로 표기한다.
이렇게하면 AI Agent 구성이 완료됩니다. Jira API를 연결하는 것이 아니라 임의의 데이터로 구성을해서 그런지 생각보다 간단합니다. 구성이 완료되었으면 Agent의 동작을 확인해볼 차례입니다.
Agent 동작 확인
저는 Foundry의 플레이 그라운드에서 동작을 확인해보았습니다.
Q. 전체 이슈에 대해 요약해줘

Q. 현재 우선 순위가 높은 이슈들은 어떤 것들이 있어?

Q. alice가 맡은 이슈들을 어떤 순서로 처리하는게 좋을까? 처리 방안에 대해서도 알려줘

Agent는 사용자가 질의를하면 내부적으로 Search 인덱스를 조회한 뒤, 조회 결과를 바탕으로 상황 요약과 처리 방향을 함께 제안해주었습니다. 만약 Agent가 어떤식으로 조회를 했는지를 확인해보고싶으면 스레드로그를 보면 됩니다.

🧩 마무리하며
이번 실습을 통해 느낀 점은, Azure AI Foundry의 AI Agent는 단순히 LLM을 감싸는 인터페이스가 아니라는 점이었습니다.
검색 로직을 직접 구현하지 않아도 되고, 프롬프트를 복잡하게 조합하지 않아도 Agent가 데이터 조회와 판단을 함께 수행할 수 있다는 점에서 AI Agent를 다루는 새로운 방식을 경험할 수 있었습니다.
무엇보다도 Azure의 다른 리소스들을 쉽게 연결시켜 AI Agent를 구성할 수 있다는 점이 제일 좋았던 것 같습니다.
다음에는 이 구조를 더 확장해서, 역할별 Agent를 나누어 평가 기능 등을 추가하여 넣으면 좋을 것 같습니다.
(처리 속도와 내용 등을 보고 업무 능력 평가를 하는.. 잔인한 Agent를 만들 수도 있겠네요 ㅎㅎ)
'🤖 AI' 카테고리의 다른 글
| [AI] Azure Foundry (0) | 2025.12.15 |
|---|---|
| [AI] 챗봇 프로젝트: GCP를 활용한 파이썬 챗봇 만들기 (5) RAG 생성 및 백엔드 연결 (0) | 2025.09.25 |
| [AI] 챗봇 프로젝트: GCP를 활용한 파이썬 챗봇 만들기 (4) 유사도 검색(Search) (3) | 2025.08.07 |
| [AI] 챗봇 프로젝트: GCP를 활용한 파이썬 챗봇 만들기 (3) 임베딩(Embedding) (3) | 2025.08.06 |
| [AI] 챗봇 프로젝트: GCP를 활용한 파이썬 챗봇 만들기 (2) BigQuery로 데이터 가공하기 (2) | 2025.08.05 |