InfoGrab DocsInfoGrab Docs

팁 및 일반적인 문제

요약

워크플로에 이미 다른 트리거가 있는 경우, 잠재적인 시작점이 두 개 생깁니다. n8n의 내부 채팅은 워크플로에서 마지막으로 실행된 노드의 출력 데이터를 읽습니다. 해결책은 에이전트에서 나오는 추가 브랜치를 추가하는 것입니다.

여러 트리거 결합하기#

워크플로에 이미 다른 트리거가 있는 경우, 잠재적인 시작점이 두 개 생깁니다. 즉 해당 트리거와 평가 트리거입니다. 어떤 트리거가 실행되더라도 워크플로가 예상대로 작동하도록 하려면 이 브랜치들을 병합해야 합니다.

두 트리거 브랜치를 병합하여 동일한 데이터 형식을 갖도록 하고, 단일 노드에서 참조할 수 있게 하는 로직입니다.

방법은 다음과 같습니다.

  1. 다른 트리거의 데이터 형식 확인하기:
    • 다른 트리거를 실행합니다.
    • 이를 열어 출력 패널의 JSON 보기로 이동합니다.
    • 오른쪽에 있는 copy 버튼을 클릭합니다.
  2. 평가 트리거 데이터를 일치하도록 재구성하기:
    • 평가 트리거 뒤에 Edit Fields (Set) node를 삽입하고 서로 연결합니다.
    • 모드를 JSON으로 변경합니다.
    • 첫 줄과 마지막 줄의 []를 제거한 뒤 복사한 데이터를 'JSON' 필드에 붙여넣습니다.
    • 필드 유형을 Expression으로 전환합니다.
    • 입력 패널에서 드래그하여 트리거의 데이터를 매핑합니다.
    • 문자열의 경우, 값 전체(따옴표 포함)를 반드시 교체하고 표현식 끝에 .toJsonString()을 추가합니다.
  3. 'No-op' 노드를 사용하여 브랜치 병합하기: No-op node를 삽입하고 다른 트리거와 Set 노드를 모두 여기에 연결합니다. 'No-op' 노드는 받은 입력을 그대로 출력만 합니다.
  4. 워크플로의 나머지 부분에서 'No-op' 노드 출력 참조하기: 두 경로 모두 동일한 형식으로 이 노드를 거치므로, 입력 데이터가 항상 존재한다는 것을 보장할 수 있습니다.

평가로 인해 채팅이 깨지지 않도록 하기#

n8n의 내부 채팅은 워크플로에서 마지막으로 실행된 노드의 출력 데이터를 읽습니다. 'set outputs' 작업을 사용하는 평가 노드를 추가한 뒤에는, 이 데이터가 예상한 형식이 아니거나 채팅 응답을 포함하지 않을 수 있습니다.

두 번째 출력 브랜치 추가

해결책은 에이전트에서 나오는 추가 브랜치를 추가하는 것입니다. n8n에서는 나중 브랜치가 더 늦게 실행되므로, 이 브랜치에 연결한 노드는 마지막에 실행됩니다. 에이전트 출력을 통과시키기만 하면 되므로 여기서는 no-op 노드를 사용할 수 있습니다.

메트릭 계산 시 도구 데이터 접근하기#

때때로 에이전트의 실행된 하위 노드에서 어떤 일이 일어났는지 알아야 할 때가 있습니다. 예를 들어 도구가 실행되었는지 확인하고 싶은 경우입니다. 이러한 노드는 표현식으로 직접 참조할 수 없지만, 에이전트에서 Return intermediate steps 옵션을 활성화할 수 있습니다. 이렇게 하면 이후 노드에서 사용할 수 있는 intermediateSteps라는 추가 출력 필드가 추가됩니다.

중간 단계 반환 활성화

같은 워크플로에서 여러 평가 사용하기#

워크플로당 평가는 하나만 설정할 수 있습니다. 다시 말해, 워크플로당 평가 트리거는 하나만 가질 수 있습니다.

그럼에도 불구하고, 워크플로의 각 부분을 서브 워크플로로 분리하고 각 서브 워크플로를 평가함으로써 서로 다른 평가로 워크플로의 다양한 부분을 테스트할 수 있습니다.

일관되지 않은 결과 다루기#

메트릭에는 노이즈가 있는 경우가 많습니다. 즉, 완전히 동일한 워크플로의 평가 실행 간에도 결과가 다를 수 있습니다. 이는 워크플로 자체가 다른 결과를 반환할 수 있거나, LLM 기반 메트릭에 자연스러운 변동이 있을 수 있기 때문입니다.

데이터 세트의 행을 중복시켜 각 행이 데이터 세트에 한 번 이상 나타나도록 함으로써 이를 보완할 수 있습니다. 이는 각 입력이 사실상 여러 번 실행된다는 것을 의미하므로, 변동을 완화하는 효과가 있습니다.

팁 및 일반적인 문제

n8n v2.29
원문 보기
요약

워크플로에 이미 다른 트리거가 있는 경우, 잠재적인 시작점이 두 개 생깁니다. n8n의 내부 채팅은 워크플로에서 마지막으로 실행된 노드의 출력 데이터를 읽습니다. 해결책은 에이전트에서 나오는 추가 브랜치를 추가하는 것입니다.

여러 트리거 결합하기#

워크플로에 이미 다른 트리거가 있는 경우, 잠재적인 시작점이 두 개 생깁니다. 즉 해당 트리거와 평가 트리거입니다. 어떤 트리거가 실행되더라도 워크플로가 예상대로 작동하도록 하려면 이 브랜치들을 병합해야 합니다.

두 트리거 브랜치를 병합하여 동일한 데이터 형식을 갖도록 하고, 단일 노드에서 참조할 수 있게 하는 로직입니다.

방법은 다음과 같습니다.

  1. 다른 트리거의 데이터 형식 확인하기:
    • 다른 트리거를 실행합니다.
    • 이를 열어 출력 패널의 JSON 보기로 이동합니다.
    • 오른쪽에 있는 copy 버튼을 클릭합니다.
  2. 평가 트리거 데이터를 일치하도록 재구성하기:
    • 평가 트리거 뒤에 Edit Fields (Set) node를 삽입하고 서로 연결합니다.
    • 모드를 JSON으로 변경합니다.
    • 첫 줄과 마지막 줄의 []를 제거한 뒤 복사한 데이터를 'JSON' 필드에 붙여넣습니다.
    • 필드 유형을 Expression으로 전환합니다.
    • 입력 패널에서 드래그하여 트리거의 데이터를 매핑합니다.
    • 문자열의 경우, 값 전체(따옴표 포함)를 반드시 교체하고 표현식 끝에 .toJsonString()을 추가합니다.
  3. 'No-op' 노드를 사용하여 브랜치 병합하기: No-op node를 삽입하고 다른 트리거와 Set 노드를 모두 여기에 연결합니다. 'No-op' 노드는 받은 입력을 그대로 출력만 합니다.
  4. 워크플로의 나머지 부분에서 'No-op' 노드 출력 참조하기: 두 경로 모두 동일한 형식으로 이 노드를 거치므로, 입력 데이터가 항상 존재한다는 것을 보장할 수 있습니다.

평가로 인해 채팅이 깨지지 않도록 하기#

n8n의 내부 채팅은 워크플로에서 마지막으로 실행된 노드의 출력 데이터를 읽습니다. 'set outputs' 작업을 사용하는 평가 노드를 추가한 뒤에는, 이 데이터가 예상한 형식이 아니거나 채팅 응답을 포함하지 않을 수 있습니다.

두 번째 출력 브랜치 추가

해결책은 에이전트에서 나오는 추가 브랜치를 추가하는 것입니다. n8n에서는 나중 브랜치가 더 늦게 실행되므로, 이 브랜치에 연결한 노드는 마지막에 실행됩니다. 에이전트 출력을 통과시키기만 하면 되므로 여기서는 no-op 노드를 사용할 수 있습니다.

메트릭 계산 시 도구 데이터 접근하기#

때때로 에이전트의 실행된 하위 노드에서 어떤 일이 일어났는지 알아야 할 때가 있습니다. 예를 들어 도구가 실행되었는지 확인하고 싶은 경우입니다. 이러한 노드는 표현식으로 직접 참조할 수 없지만, 에이전트에서 Return intermediate steps 옵션을 활성화할 수 있습니다. 이렇게 하면 이후 노드에서 사용할 수 있는 intermediateSteps라는 추가 출력 필드가 추가됩니다.

중간 단계 반환 활성화

같은 워크플로에서 여러 평가 사용하기#

워크플로당 평가는 하나만 설정할 수 있습니다. 다시 말해, 워크플로당 평가 트리거는 하나만 가질 수 있습니다.

그럼에도 불구하고, 워크플로의 각 부분을 서브 워크플로로 분리하고 각 서브 워크플로를 평가함으로써 서로 다른 평가로 워크플로의 다양한 부분을 테스트할 수 있습니다.

일관되지 않은 결과 다루기#

메트릭에는 노이즈가 있는 경우가 많습니다. 즉, 완전히 동일한 워크플로의 평가 실행 간에도 결과가 다를 수 있습니다. 이는 워크플로 자체가 다른 결과를 반환할 수 있거나, LLM 기반 메트릭에 자연스러운 변동이 있을 수 있기 때문입니다.

데이터 세트의 행을 중복시켜 각 행이 데이터 세트에 한 번 이상 나타나도록 함으로써 이를 보완할 수 있습니다. 이는 각 입력이 사실상 여러 번 실행된다는 것을 의미하므로, 변동을 완화하는 효과가 있습니다.