Palantir Foundry AIP Speedrun: 엔드투엔드 AI 워크플로우 완벽 마스터 가이드
메뉴

AI Agent

Palantir Foundry AIP Speedrun: 엔드투엔드 AI 워크플로우 완벽 마스터 가이드

Palantir Foundry AIP Speedrun 코스 전체를 이 글 하나로 완벽 마스터합니다. PDF 파싱, LLM 개체 추출, 온톨로지 바인딩, Vertex 지식그래프, AIP Logic Function, Workshop 앱까지 실무 아키텍처를 상세히 정리합니다.

Palantir Foundry AIP Speedrun: 엔드투엔드 AI 워크플로우 완벽 마스터 가이드 hero image
Markdown약 2715 tokens

기업 현장에서 AI Agent와 대형 언어 모델(LLM)을 도입할 때 가장 큰 난관은 "수많은 비구조화 문서(PDF, 규정집, 학술 논문)를 어떻게 신뢰할 수 있는 지식으로 가공하고, 실제 업무 시스템과 실시간 연동할 것인가"입니다.

단순히 문서를 Vector DB에 저장하고 유사도 검색(Similarity Search)으로 텍스트 조각을 가져오는 기본 RAG(Retrieval-Augmented Generation) 방식은 문서가 복잡해지거나 엔티티 간 정밀한 관계 추론이 필요할 때 할루시네이션(환각)과 맥락 단절의 한계를 드러냅니다.

Palantir의 "Speedrun: Your First AIP Workflow" 교육 코스는 이 문제를 해결하기 위해 Foundry AIP(AI Platform)의 풀스택 컴포넌트를 활용하여 비구조화 PDF 세트 수집부터 LLM 엔티티 추출, 온톨로지(Ontology) 객체화, Vertex 지식그래프 시각화, AIP Logic Function 작성, 그리고 Workshop 인터랙티브 앱 제작까지 60–90분 내에 완벽한 디지털 지식 인턴(Summer Intern)을 구축하는 엔드투엔드 워크플로우를 다룹니다.

이 포스팅 하나만 읽어도 Palantir AIP Speedrun 코스의 모든 개념, 엔지니어링 아키텍처, 데이터 파이프라인 설정, 온톨로지 바인딩, AIP Logic 작성 및 UI 앱 구축 노하우를 완벽히 습득할 수 있도록 철저하게 정리했습니다.


1. 엔드투엔드 파이프라인 아키텍처 (E2E Architecture)

Palantir AIP 시스템은 비구조화 PDF 데이터가 파이프라인을 통과하며 단계적으로 시맨틱 온톨로지 객체로 변환되고, AIP Logic과 Workshop UI를 통해 실시간으로 추론·시각화되는 구조를 가집니다.


2. 코스 모듈별 상세 마스터 가이드 (Module 1 – 9)

Module 1. Course Introduction (유즈케이스 & 목표)

1.1 유즈케이스 배경 및 해결 과제

  • 핵심 목표: 사내 전문 라이브러리(PDF 규정집, 학술 논문, 특허 기술 문서 등)에서 필요한 정보와 엔티티 간 연결 관계를 신속하게 추출하고, 근거(Citation)를 갖춘 답변을 제시하는 "디지털 인턴(Summer Intern)" 앱 구축.
  • 기존 방식과의 차이: 단순 키워드/벡터 검색에 의존하지 않고, 문서 내 등장하는 핵심 개념(Entity)과 조각(Chunk)을 그래프로 엮어 LLM에 주입함으로써 할루시네이션을 근본적으로 차단합니다.

1.2 준비 사항 (Prerequisites)

  • Palantir Foundry 계정 (기업 계정 또는 무료 Developer Tier 계정인 BUILD_WITH_AIP).

Module 2. Setting Up Your Project and Folder (프로젝트 및 폴더 구성)

Foundry 내에서 데이터 자원과 온톨로지 정의가 섞이지 않도록 보안 및 폴더 구조를 철저히 격리합니다.

  1. Create a Foundry Learning Project:
  • Foundry 헤더 메뉴에서 Projects & Files로 이동하여 신규 프로젝트 AIP Speedrun - Learning Project를 생성합니다.
  • 프로젝트 스코프를 설정하여 이 파이프라인에서 생성되는 데이터셋과 온톨로지가 Sandbox 내에서만 렌더링되도록 보호합니다.
  1. Create Training Folder:
  • 프로젝트 내부 하위에 Training_PDF_AIP_Workflow 폴더를 마련합니다.
  • 이 폴더 안에 01_Ingestion, 02_Pipeline, 03_Ontology, 04_AIP_Logic, 05_Workshop_App 서브 폴더를 구조화합니다.

Module 3. Uploading the Data (원천 데이터 수집)

비구조화 PDF 문서를 파운드리 인프라로 수집(Ingestion)하는 단계입니다.

  1. Create Media Set:
  • 01_Ingestion 폴더에서 New -> Media Set을 선택합니다.
  • 수집할 PDF 파일 세트(예: 수백 페이지 분량의 항공 공학 기술 문서 또는 법률 판례집)를 업로드합니다.
  1. Media Set 파일 인덱싱:
  • Foundry의 Media Set 인프라가 PDF 파일들의 OCR 및 바이너리 스트림을 자동으로 파싱하여 파이프라인에서 읽을 수 있는 비구조화 파일 레퍼런스로 전환합니다.
  1. [Optional] Deploy via Marketplace:
  • 실습 속도를 위해 미리 정제된 레퍼런스 데이터셋 템플릿을 Marketplace에서 일괄 배포(Deploy)하는 옵션도 지원됩니다.

Module 4. Transforming Data & LLM Extraction (데이터 변환 & LLM 개체 파이프라인)

Pipeline Builder 또는 Contour를 사용하여 비구조화 PDF를 정제된 데이터셋 3종(Chunks, Entities, Join Table)으로 변환합니다.

       [Raw Media Set PDF]      ┌────────┴────────┐      ▼                 ▼[Text Chunking]  [Embedding Vector]      │                 │      ▼                 │[Chunk Dataset] ◄───────┘[LLM Batch Entity Extraction]      ├─────────────────┐      ▼                 ▼[Entities Dataset]   [Join Table (Chunk-Entity M:N)]

Step 4.1. Text Chunking (텍스트 조각화)

  • PDF 매체 세트에서 텍스트 스트림을 읽어와 일정한 크기의 문맥 단락(Text Chunk)으로 분할합니다.
  • 청킹 원칙: 하나의 Chunk는 "단일 정보 포인트(Single Point of Information)"를 온전히 포함하도록 단락/문장 경계를 기준으로 쪼갭니다.
  • Chunk ID 부여: 각 Chunk마다 고유한 Primary Key(chunk_id)를 생성하기 위해 텍스트 내용과 문서명을 조합한 Hash 함수를 적용합니다.

Step 4.2. Vector Embeddings (의미 벡터 인덱싱)

  • 분할된 Chunk 텍스트에 임베딩 모델(예: Text Embedding Model)을 실행하여 벡터 차원 필드(embedding_vector)를 스키마에 추가합니다.

Step 4.3. LLM Batch Entity Extraction (LLM 기반 엔티티 추출)

  • Pipeline Builder 내의 LLM Batch Node를 추가하고 프롬프트 스펙을 정의합니다:
 Prompt: |   다음 텍스트 조각을 읽고, 등장하는 핵심 엔티티(인물, 조직, 기술 용어, 제품, 장소 등)를 추출하세요.   출력은 JSON 배열 형태여야 하며, 각 엔티티의 이름(entity_name)과 유형(entity_type), 설명(description)을 포함하세요.
  • Entity Resolution (개체 정규화):
  • LLM 처리 결과로 나온 엔티티 표기(예: "Palantir Technologies", "Palantir Corp", "Palantir Inc")를 표준 식별자(entity_id)로 일관되게 정제하고 중복을 제거합니다.

Step 4.4. Join Table (다대다 연관 테이블) 생성

  • Chunk와 Entity 사이의 연결 관계를 표현하는 Chunk_Entity_Join 데이터셋을 생성합니다.
  • 스키마 구조: join_id, chunk_id, entity_id, extraction_confidence

Step 4.5. Deploy Pipeline

  • 전체 노드를 구성한 뒤 Deploy Pipeline을 눌러 Spark 파이프라인을 실행하고 최종 데이터셋 3종을 생성합니다.

Module 5. Configuring Ontology (온톨로지 객체 구성)

파운드리 시맨틱 레이어(Ontology)에 생성된 데이터셋을 매핑하여 business-centric 객체 모델로 전환합니다.

5.1 Chunk Object Type 정의

  • Object Type Name: Chunk
  • Backing Dataset: Chunks Dataset
  • Primary Key: chunk_id (String)
  • Title Property: chunk_id
  • Properties:
  • text_content (String): 문서 청크 본문 텍스트
  • source_doc (String): 원본 PDF 파일명
  • embedding_vector (Vector): 의미 검색용 임베딩

5.2 Entity Object Type 정의

  • Object Type Name: Entity
  • Backing Dataset: Entities Dataset
  • Primary Key: entity_id (String)
  • Title Property: entity_name
  • Properties:
  • entity_name (String): 엔티티 명칭
  • entity_type (String): 엔티티 카테고리 (Organization, Technology, Person 등)
  • description (String): LLM이 작성한 엔티티 개요

5.3 Object Link Types (M:N 릴레이션 바인딩)

  • Link Type Name: ChunkToEntity / EntityToChunk
  • Relation Pattern: Many-to-Many (M:N)
  • Join Table: Chunk_Entity_Join 데이터셋 매핑 (chunk_identity_id)
  • 효과: 특정 Entity를 조회했을 때 그 엔티티가 언급된 모든 Chunk 객체를 즉시 다형성 그래프 탐색(Traverse)할 수 있습니다.

Module 6. Exploring Object Relations (Vertex 지식그래프 시각화)

  1. Vertex Graph Open: Foundry 메뉴에서 Vertex 탐색기를 열고 온톨로지의 EntityChunk 객체를 캔버스에 추가합니다.
  2. Graph Traversal (네트워크 탐색):
  • 중심 엔티티 노드(예: "Palantir AIP")를 선택하고 Expand Links를 클릭하면, 해당 엔티티와 연결된 청크 노드들이 펼쳐집니다.
  • 청크 노드를 통해 또 다른 엔티티 노드(예: "Foundry Ontology", "Workshop")로 네트워크가 이어지는 지식그래프의 시각적 형태를 확인합니다.
  1. Configure Vertex Template:
  • 엔드유저 앱에서 특정 엔티티를 선택했을 때 연관 노드 뷰를 동적으로 시각화해 주는 그래프 템플릿(Knowledge_Graph_Explorer_Template)으로 저장합니다.

Module 7. Creating an AIP Logic Function (AIP 로직 함수 구현)

Workshop UI 앱에서 호출할 AIP 로직 함수를 Prompt Studio 또는 TypeScript Functions 환경에서 작성합니다.

7.1 AIP Logic 함수 입출력 정의

  • Input Parameters:
  • user_query (String): 사용자의 질의
  • selected_entities (List of Entity): 사용자가 앱에서 선택하거나 검색한 엔티티 객체 목록
  • Output Return:
  • response_text (String): 검증된 최종 답변
  • referenced_chunks (List of Chunk): 근거로 활용된 청크 객체 목록

7.2 Grounded Prompt & Guardrail 작성

System Prompt: |  당신은 Palantir AIP 기반의 전문 지식 분석 에이전트입니다.  사용자의 질문({user_query})에 답할 때, 반드시 제공된 지식그래프 Context 객체들만 바탕으로 답변해야 합니다.    [Context Objects]  - Related Entities: {selected_entities}  - Grounded Chunks: {retrieved_chunks_text}   [답변 규칙]  1. 제공된 Context에 없는 내용을 절대 추측하여 답변하지 마세요. (Strict Anti-Hallucination)  2. 문장 끝에는 반드시 근거가 된 Chunk ID를 [Chunk: {chunk_id}] 형태로 분명하게 명시하세요.  3. Context 정보가 부족한 경우 "제시된 지식 기반 내에서는 해당 질문에 답할 수 없습니다."라고 솔직하게 응답하세요.

7.3 Function Publish

  • 작성한 로직의 단위 테스트를 통과한 후, Publish Version을 실행하여 프로덕션 아티팩트로 배포합니다.

Module 8. Building an App (Workshop 인터랙티브 앱 제작)

Palantir Workshop 도구를 활용하여 비즈니스 분석가와 엔드유저가 즉시 사용할 수 있는 리액시브 웹 응용프로그램을 구성합니다.

┌─────────────────────────────────────────────────────────────────────────┐│  [Header Bar]  AIP Speedrun Knowledge Explorer App                      │├───────────────────────────────┬─────────────────────────────────────────┤│ [Search & Input Panel]        │ [Vertex Graph Component]                ││ > Search Entity: "AIP"        │                                         ││ > User Question: "AIP 기능?"  │    (Entity: AIP) ─── (Chunk #102)       ││                               │          │                 │            ││ [Object List Panel]           │    (Chunk #105) ─── (Entity: Ontology)  ││ - Entity: Palantir AIP        │                                         ││ - Chunk #102: "AIP는..."      ├─────────────────────────────────────────┤│ - Chunk #105: "Ontology..."   │ [AIP Response Panel]                    ││                               │ > "Palantir AIP는 온톨로지 기반으로..."  ││ [Button: Run AIP Logic]       │   [Source: Chunk #102, #105]            │└───────────────────────────────┴─────────────────────────────────────────┘

8.1 Workshop 레이아웃 설계

  1. Left Navigation Panel:
  • 엔티티 검색창 및 사용자가 선택한 엔티티/청크 오브젝트 테이블 리스트 컴포넌트 배치.
  1. Top-Right Main Canvas:
  • Vertex Graph Widget: Module 6에서 만든 Knowledge_Graph_Explorer_Template을 내장하여, 좌측에서 선택한 엔티티에 따라 지식그래프 네트워크가 실시간으로 반응하도록 바인딩.
  1. Bottom-Right Response Panel:
  • AIP Response Card: 사용자 질문 입력 박스와 AIP Logic Function 호출 버튼, 생성된 답변 및 근거 Chunk 바로가기 딥링크 컴포넌트배치.

8.2 Event & State Binding (상태 연동)

  • On Search Submit -> Filter Entity Objects -> Update Vertex Graph Selection -> Invoke AIP Logic Function -> Render Response & Citation Links.

Module 9. Conclusion & Advanced Patterns (실무 확장 및 보안)

  • Speedrun 완성 결과: 60–90분의 실습을 통해 비구조화 PDF 파싱부터 LLM 엔티티 추출, 온톨로지 릴레이션 바인딩, 지식그래프 탐색, AIP Logic 추론, Workshop UI 앱까지 완전한 E2E AI 솔루션을 완성했습니다.
  • 실무 운영 시 고려사항 (Production Scale-Up):
  1. RBAC & Data Governance: 온톨로지 객체 수준에서 사용자 권한(Markings & Role Access)을 적용하여 보안 수준에 따라 특정 청크/엔티티 노드가 조율되도록 제어.
  2. Incremental Data Pipeline: 신규 PDF 문서가 인제스트될 때 전체 파이프라인을 재실행하지 않고, 신규 추가분만 청킹 및 LLM 추출을 수행하는 증분 파이프라인(Incremental Pipeline) 구성.

3. 핵심 비교: RAG vs GraphRAG vs Palantir Ontology AIP

구분기본 RAG (Basic RAG)GraphRAGPalantir Foundry AIP
지식 표현 방식텍스트 조각 (Text Chunk + Vector)그래프 노드 & 엣지 (Graph Network)온톨로지 객체 모델 (Ontology Object + Links)
추론 방식Top-K 유사도 검색 (Similarity Search)커뮤니티 요약 및 시맨틱 그래프 탐색지식그래프 + 온톨로지 액션 + AIP Logic
할루시네이션 방지보통 (문서 파편만 전달)높음 (관계 맥락 전달)최상 (온톨로지 Grounding + Citation)
엔드유저 앱 연동별도 프론트엔드 개발 필요외부 대시보드 커스텀 개발 필요Workshop & Vertex 통합 제공 (No-Code UI)
기업 시스템 연동단방향 조회만 가능단방향 조회만 가능양방향 액션 (Action Types, Write-back)

결론 및 엔지니어링 인사이트

Palantir AIP Speedrun은 단순히 LLM API를 호출하는 기술 수준을 넘어, "엔터프라이즈 환경에서 비구조화 데이터를 온톨로지 지식 체계로 승화시키는 데이터 엔지니어링의 정수"를 보여줍니다.

  1. 비구조화 데이터의 시맨틱 자산화: PDF 문서가 단순 파일로 남지 않고 ChunkEntity라는 온톨로지 객체로 재구성됩니다.
  2. 지식그래프를 통한 명확한 맥락 제공: LLM이 관계를 오해하지 않도록 Vertex 지식그래프 기반의 풍부한 맥락을 주입합니다.
  3. 완벽하게 제어되는 AI 워크플로우: AIP Logic과 Workshop UI를 연동하여 보안, 근거 제시, 반응형 UI가 통합된 진정한 기업용 AI 애플리케이션을 완성할 수 있습니다.

댓글

GitHub 계정으로 로그인하면 댓글을 남길 수 있습니다. 댓글은 GitHub Discussions를 통해 운영됩니다.

TOP