<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://wiki.conaondaapps.com/index.php?action=history&amp;feed=atom&amp;title=%ED%95%98%EB%84%A4%EC%8A%A4_%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81</id>
	<title>하네스 엔지니어링 - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.conaondaapps.com/index.php?action=history&amp;feed=atom&amp;title=%ED%95%98%EB%84%A4%EC%8A%A4_%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81"/>
	<link rel="alternate" type="text/html" href="https://wiki.conaondaapps.com/index.php?title=%ED%95%98%EB%84%A4%EC%8A%A4_%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81&amp;action=history"/>
	<updated>2026-08-20T16:01:57Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://wiki.conaondaapps.com/index.php?title=%ED%95%98%EB%84%A4%EC%8A%A4_%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81&amp;diff=81&amp;oldid=prev</id>
		<title>Admina7ec671ac513: migrate: import legacy Wiki content to Vultr</title>
		<link rel="alternate" type="text/html" href="https://wiki.conaondaapps.com/index.php?title=%ED%95%98%EB%84%A4%EC%8A%A4_%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81&amp;diff=81&amp;oldid=prev"/>
		<updated>2026-08-20T04:19:33Z</updated>

		<summary type="html">&lt;p&gt;migrate: import legacy Wiki content to Vultr&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;하네스 엔지니어링&amp;#039;&amp;#039;&amp;#039;(harness engineering)은 언어 모델 주변의 실행 환경을 설계하고 구축하는 공학 분야이다. 모델이 사용하는 도구, 문맥, 메모리, 출력 처리와 안전장치를 포함하는 하네스(harness)를 만드는 작업을 가리킨다.&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
[[프롬프트 엔지니어링]]이 텍스트 입력이라는 단일 채널로 모델과 소통한다면, 하네스 엔지니어링은 모델이 외부 세계와 상호작용하는 모든 경로를 설계한다. 모델을 두뇌에 비유하면 하네스는 감각 기관과 몸에 해당한다.&lt;br /&gt;
&lt;br /&gt;
에이전트 공학 문헌에서 하네스라는 용어는 모델을 둘러싼 환경·도구·문맥을 총칭하는 말로 사용된다. 에이전트 시스템의 성능은 모델의 능력만큼 하네스의 설계에 의해 결정되므로, LLM 애플리케이션 개발의 중심적인 작업이 되었다.&lt;br /&gt;
&lt;br /&gt;
== 핵심 개념 ==&lt;br /&gt;
&lt;br /&gt;
=== 문맥 관리 ===&lt;br /&gt;
모델의 컨텍스트 윈도우는 유한하므로, 무엇을 넣고 무엇을 빼는지가 성능을 결정한다. 대표적인 방법은 다음과 같다.&lt;br /&gt;
* 검색 증강 생성(RAG): 필요한 정보를 검색해 프롬프트에 주입한다.&lt;br /&gt;
* 대화 요약과 압축: 긴 대화를 요약해 문맥을 유지한다.&lt;br /&gt;
* 문맥 선별: 관련도가 낮은 내용을 버리고 중요한 정보를 보존한다.&lt;br /&gt;
&lt;br /&gt;
=== 도구 정의와 호출 ===&lt;br /&gt;
하네스의 핵심 요소는 도구(tool)이다. 도구는 함수 호출(function calling) 형태로 모델에 노출되며, 모델이 생성한 호출을 하네스가 실행하고 그 결과를 다시 모델에 돌려준다. 파일 읽기, 웹 검색, API 호출, 데이터베이스 질의 등이 도구로 감싸진다.&lt;br /&gt;
&lt;br /&gt;
=== 출력 처리 ===&lt;br /&gt;
모델 출력을 그대로 사용하지 않고 구조를 검증하고 변환한다. JSON 스키마 검증, 형식 오류 시 재시도, 출력 분류와 필터링 등이 포함된다.&lt;br /&gt;
&lt;br /&gt;
=== 메모리 ===&lt;br /&gt;
대화 간 정보를 저장하고 꺼내 쓰는 장기 메모리와, 현재 작업의 상태를 유지하는 단기 메모리를 구분해 설계한다.&lt;br /&gt;
&lt;br /&gt;
=== 가드레일 ===&lt;br /&gt;
입력과 출력에 대한 안전 규칙, 민감 정보 필터, 토큰·비용 제한 등을 하네스에 배치한다.&lt;br /&gt;
&lt;br /&gt;
== 설계 원칙 ==&lt;br /&gt;
* 문맥은 자원이다: 컨텍스트 윈도우를 효율적으로 사용하도록 설계한다.&lt;br /&gt;
* 실패를 예상한다: 도구 호출 실패, 형식 오류, 비정상 출력을 처리하는 경로를 만든다.&lt;br /&gt;
* 관측 가능하게 만든다: 입력·출력·도구 호출을 기록해 문제를 진단할 수 있게 한다.&lt;br /&gt;
&lt;br /&gt;
== 관련 공학 분야 ==&lt;br /&gt;
하네스는 프롬프트를 포함하는 상위 계층이다. [[프롬프트 엔지니어링]]으로 해결되지 않는 정보·도구·상태 문제는 하네스에서 다룬다. 하네스 위에서 반복 실행을 설계하는 것이 [[루프 엔지니어링]], 여러 실행 경로를 조율하는 것이 [[그래프 엔지니어링]]이다.&lt;br /&gt;
&lt;br /&gt;
== 함께 보기 ==&lt;br /&gt;
* [[프롬프트 엔지니어링]]&lt;br /&gt;
* [[루프 엔지니어링]]&lt;br /&gt;
* [[그래프 엔지니어링]]&lt;br /&gt;
* [[LLMOps]]&lt;br /&gt;
&lt;br /&gt;
== 출처 ==&lt;br /&gt;
* [https://www.anthropic.com/engineering/building-effective-agents Anthropic: Building Effective Agents]&lt;br /&gt;
* [https://openai.com/index/a-practical-guide-to-building-agents/ OpenAI: A Practical Guide to Building Agents]&lt;br /&gt;
* [https://platform.openai.com/docs/guides/function-calling OpenAI 함수 호출 문서]&lt;br /&gt;
&lt;br /&gt;
[[분류:AI 엔지니어링]]&lt;/div&gt;</summary>
		<author><name>Admina7ec671ac513</name></author>
	</entry>
</feed>