Agentic AI19 2. [Summary Memory] 대화 이력 슬라이딩 윈도우 및 자동 요약 압축 시스템 이전 코드에서 한 단계 더 발전하여 대화 개수 기준(슬라이딩 윈도우)을 적용해 대화 이력(History)을 자동으로 잘라내고 요약 및 압축하는 완성형 파이썬 스크립트입니다. #History_Management (대화 이력 관리): 대화형 AI가 이전 맥락을 기억하도록 대화 목록을 저장하고 전달하는 메커니즘입니다.#Sliding_Window (슬라이딩 윈도우): 전체 대화 중 최근 $N$개의 메시지만 최신 상태로 유지하고, 나머지 오래된 메시지는 분리해내는 기법입니다.#Context_Compression (컨텍스트 압축): 오래된 대화들을 LLM에 전달해 3줄 요약문으로 만든 뒤 system 메시지로 변환하여 전체 토큰 수를 대폭 줄이는 기술입니다.#List_Slicing (리스트 슬라이싱): 파이썬의 m.. 2026. 8. 31. 1. [Short-term Memory] 대화 이력 자동 압축 및 요약 시스템 대화가 길어질 때 발생하는 토큰 사용량 증가와 비용 문제를 해결하기 위해, 이전 대화 내용(History)을 OpenAI 모델을 통해 핵심만 3줄로 자동 요약해주는 파이썬 스크립트입니다. #Context_Window (문맥 창) 및 토큰 관리: 대화가 길어질수록 전달되는 텍스트(토큰)량이 늘어나 비용이 급증합니다. 이를 해결하기 위해 오래된 대화를 요약하여 압축(Summarization)하는 기법이 필수적입니다. 1. 환경 설정 및 라이브러리 로드import osfrom dotenv import load_dotenvfrom openai import OpenAIload_dotenv()API_KEY = os.getenv("OPENAI_API_KEY")MODEL_NAME = os.environ.get("MOD.. 2026. 8. 31. XVII. AI Agent Engine 기본 완성: Python · Agent Loop · Tool Dispatcher · Function Call · Context Block · History Trim # 1. import import os import json import time import logging import inspect from pathlib import Path from datetime import datetime from dataclasses import dataclass, field from typing import Any from dotenv import load_dotenv from openai import OpenAI # ============================================================ # 2. Environment settings # ===========.. 2026. 8. 30. XVI. 작은 AI Agent에 5가지 기능을 추가한 프로그램(끝) # 1. Tools from pathlib import Path def calculator(expr:str)->str: """(20*4)+15와 같은 간단한 산술 표현식을 계산합니다.""" allowed = set("0123456789+-*/().") expr = expr.replace(" ", "") if not expr or not set(expr) allowed: return "오류: 숫자와 +-*/().만 허용됩니다." try: return str(eval(expr)) except (SyntaxError, ZeroDivisionError) as e: .. 2026. 8. 26. XV. 작은 AI Agent 프로그램(실제 LLM -OpenAI 사용) # 1. Tools from pathlib import Path def calculator(expr:str)->str: """(20*4)+15와 같은 간단한 산술 표현식을 계산합니다.""" allowed = set("0123456789+-*/().") expr = expr.replace(" ", "") if not expr or not set(expr) allowed: return "오류: 숫자와 +-*/().만 허용됩니다." try: return str(eval(expr)) except (SyntaxError, ZeroDivisionError) as e: .. 2026. 8. 26. XIV. 작은 AI Agent 프로그램(가짜 LLM Model-script 사용) # 1. 설계 주석 # 설계 # 목표: 사용자로부터 입력받은 문장 # 도구: 계산기, 파일 읽기, 조회 # 반복: 최대 6단계 # 메모리: 메시지 목록 (완료 시 디스크에 저장) # 종료: 모델이 '완료' 도구를 반환하거나 단계 제한에 도달함 # (아래는 영문으로 위와 동일한 내용) # The design # goal a sentence from the user # tools calculator, read_file, lookup # loop at most 6 steps # memory a list of messages, saved to dis.. 2026. 8. 26. 이전 1 2 3 4 다음