AI 웹 아티팩트 생성 및 편집을 위한 관리자 API

이 토론에 따르면, 많은 관리자(Admin)들이 아티팩트를 수동으로 생성하고 편집할 수 있는 인터페이스 또는 관리자 API를 갖추게 된다면 매우 기뻐할 것 같습니다.

현재 아티팩트를 생성/편집할 수 있는 유일한 방법은 Web Artifact Creator 페르소나를 사용하는 것입니다. 그러나 이 방식에는 본질적으로 몇 가지 한계가 있습니다:

  • :money_bag: 비용: 텍스트 변경이나 버튼 위치 조정과 같은 자잘한 수정을 위해 LLM 호출을 하는 것은, 모든 문제를 꼼꼼히 해결하고 점진적으로 새로운 요소를 추가하려는 경우 매우 비싸질 수 있습니다.
  • :warning: 위험: 원칙적으로(아직 직접 시도해 보지 않아 확실하지는 않지만) 관리자는 SSH 터널링을 통해 데이터베이스에 접속하거나(pgAdmin 4와 같은 GUI를 사용하거나), 관련 테이블에서 관련 행을 복사하고 아티팩트 ID를 자동 증분 처리하며, 다른 아티팩트의 코드를 수정하거나 변경하는 등의 작업을 수행할 수 있습니다. 하지만 이는 명백히 위험하고 파괴적일 수 있습니다(결국 Data Explorer가 읽기 전용인 이유이기도 합니다). 게다가 시간이 많이 소요됩니다.

이 기능이 도입된다면 무엇을 가능하게 할까요? 매우 많은 것을 가능하게 할 것입니다. 제 커뮤니티와 관련된 몇 가지 예시만 들자면 다음과 같습니다:

  • :nerd_face: “기본 퀴즈” 아티팩트: 하나의 기본 퀴즈 아티팩트를 두고, 이를 복사한 후 JSON 저장소를 수정하여 완전히 새로운 퀴즈를 만들 수 있습니다. 이 경로는 교육 커뮤니티를 위한 H5P 콘텐츠를 완전히 우회할 잠재력이 있습니다.
  • :wrench: “아티팩트 복사/사용자 정의” LLM 도구: 이 가상의 기능이 Discourse의 풍부한 REST API의 일부가 된다면, 관리자는 특정 페르소나가 주어진 아티팩트를 복사한 후 특정 사용자나 그룹을 위해 JSON 저장소를 개인화할 수 있도록 하는 도구를 만들 수 있습니다.
  • :microscope: 개인화된 아티팩트: 이전 두 가지와 밀접하게 관련되어, 아무것도 망가뜨리지 않고 아티팩트를 복사/붙여넣기하기 위해 LLM에 의존해야 하는 대신, 실제로 작동하는 아티팩트 하나만 만들어 두고 이 API를 사용하여 특정 사용자나 그룹을 위해 복사한 후 JSON 저장소를 통해 필요한 대로 개인화할 수 있습니다. 이 기능의 한 사용 사례는 일부 사용자를 위한 개별 지식 그래프를 만드는 것입니다. 잘 작동하는 그래프 시각화 아티팩트가 있다면, 각 사용자가 자신의 지식 그래프를 만들어 영구적인 JSON으로 저장할 수 있을 것입니다.
  • :computer_disk: JSON 데이터 가져오기: 이러한 API가 주어진 아티팩트에 연결된 영구적인 JSON 데이터를 더 쉽게 검색할 수 있도록 할 것이라고 추측합니다. 이는 여러 가지 이유로 막대한 이점을 가져올 수 있습니다. 예를 들어, LLM에 컨텍스트로 제공하기 위해(“아티팩트 데이터 읽기” 도구를 통해) 사용하는 것 등이 있습니다.
7개의 좋아요

ai_artifacts 데이터베이스 테이블에 새 아티팩트를 pgAdmin4를 사용하여 수동으로 추가하려고 했습니다. 이미 존재하는 아티팩트의 행을 복사/붙여넣기한 뒤, id, user_id, post_id 컬럼의 값을 변경했습니다. ai_artifact_key_values 테이블에도 동일한 과정을 반복했습니다.

그러나 아직 원인을 알 수 없는 이유로 작동하지 않았습니다. 수동으로 추가한 새 아티팩트가 해당 사용자에게 표시되어야 하는데 보이지 않았습니다. 그래서 이 문제를 해결하는 유일한 방법은 전용 관리자 API 엔드포인트를 사용하는 것일 것 같습니다 :pensive_face:

3개의 좋아요

이번에 Codepen 스타일의 편집기가 제공되지 않더라도, VSCode에 내장된 것과 같은 방식이라면 만족스러울 것 같습니다.

4개의 좋아요

내 표를 받을 수 있겠네요! 우리 회사도 이걸 정말 유용하게 쓸 수 있을 것 같아요. 방금 디스코र्स(Discourse)로 이전했거든요. 그분들과 이야기해서 의견을 들어볼 생각입니다. 몇 가지 질문을 해도 될까요?

  1. 아티팩트에 어떤 LLM을 사용하시나요?
  2. 아티팩트를 공유하기 위해 다른 어떤 시도를 해보셨나요?

그리고

이것이 어떻게 작동하는지 좀 설명해 주실 수 있을까요? 꽤 부담이 클 것 같은데요.

2개의 좋아요

Claude Sonnet 4가 꽤 잘 작동하는 것 같고, Claude Code가 훌륭하다는 모든 증언들이 이를 뒷받침하고 있습니다. 다만 아직 o3 pro는 테스트해보지 못했습니다.

그룹 메시지, 비공개 카테고리 공유, 데이터베이스에 아티팩트를 수동으로 복사하는 등 여러 방법을 시도해봤습니다. 아티팩트를 공유할 수 있는 유일한 방법은 공개적으로 공유하는 것인 것 같습니다(세밀한 접근 권한을 제어할 수 있는 방법이 없습니다).

2개의 좋아요

Cloudflare는 이 부분을 잘 처리하고 있습니다. Workers UI에 코드 편집 버튼이 있고, 이 버튼을 누르면 내장된 VSC로 이동하여 코드를 간단히 편집한 후 바로 워커에 배포할 수 있습니다. 브라우저에서 아티팩트를 생성하고 편집할 때에도 이와 유사한 방식이 적용될 수 있습니다.

3개의 좋아요

이와 관련하여 업데이트나 예상 완료일(ETA)이 있을까요? 압박이나 불편을 드리려는 의도는 전혀 없습니다! 커뮤니티를 위한 몇 가지 설정을 진행 중인데, 이 기능이 구현되느냐에 따라 어떤 방향으로 진행할지 결정해야 해서 궁금해서 여쭤봅니다 :face_with_peeking_eye:

PR를 올려두었습니다

3개의 좋아요

이 주제는 3일 후 자동으로 닫혔습니다. 더 이상 답변이 허용되지 않습니다.