Discourse의 AI 기능 디버깅: OpenAI는 응답하지만 포럼은 반응하지 않을 때

디스코urs에 AI 기능을 개발해 주셔서 감사합니다. 이 기능이 미래에 중요한 기능이 될 것 같습니다.

저는 자체 호스팅된 포럼(tff-forum.de)에서 AI 플러그인을 사용해 보았습니다. 관리자 패널에서 Open AI API 키를 추가하고 “gpt-3.5-turbo-16k” 모델을 다양한 기능에 활성화한 후, 포럼의 여러 곳에서 추가된 AI 버튼을 볼 수 있습니다.

버튼 중 하나를 클릭하면 아무 반응이 없거나, 다음 스크린샷에 표시된 오류 메시지가 나타납니다.

Open AI 사용량 대시보드에서 API 요청은 확인할 수 있지만, 디스코urs가 응답을 받지 못하는 것 같습니다.

다른 모델들(gpt-35, gpt-4 등)도 시도해 보았지만, 기능이 응답을 반환하지 않는다는 결과는 항상 동일했습니다.

디스코urs 오류 로그에는 AI 기능과 관련된 문제는 표시되지 않습니다.

이 문제를 디버깅하거나 분석하는 방법에 대해 추가 정보를 제공해 주실 수 있을까요?

아래 명령어를 서버에서 시도해 주세요.

Open AI API 기능을 확인하는 스크립트를 공유해 주셔서 감사합니다.

서버에서 스크립트를 실행했고, gpt로부터 다음과 같은 답변을 받았습니다:

...
 {
 "index": 0,
 "message": {
 "role": "assistant",
 "content": "코드의 운율 한가운데,
마음속에 떠오르는 개념을 보라.
그것은 재귀, 예술이자 고대 전통,
함수가 자신을 호출하는 것이 그 사명.

자부심 가득한 함수, 다른 호출에는 귀를 기울이지 않고,
견고하게 서 있다.
스스로를 다시 호출하는 것을 선택하며,
그렇게 매혹적인 패턴을 엮어 낸다.

시작할 때, 당신은 추측할 수 있다.
끝나는 곳은 아무도 모른다고?
그러나 무한 루프를 두려워 말라,
베이스 케이스가 우리의 구원 고리이므로.

신성하게 작은 베이스에 도달하면,
함수는 마침내 멈춘다.
그렇게 멈추고 더 이상 얽매이지 않으며,
찾아야 할 것을 돌려준다.

이러한 열정적인 호소를 누가 하겠는가?
딜을 마무리하는 우아한 방식.
미로를 풀거나 문자열을 역순으로 만들거나,
재귀가 날개를 펼치는 것을 보라.

각 인스턴스는 자신의 메모리 스택을 가지며,
앞에서 뒤까지 그 길을 추적한다.
그리고 이러한 인스턴스가 성장할 때,
메모리의 탑을 선사한다.

올바르게 수행되면, 조화는 순수하다.
재귀의 매력, 정말 유혹적이다.
그것은 우아함, 깊은 자율성,
알고리즘 의식의 왕관 속 보석.

그것은 춤이고, 연극이며, 영원한 재연,
재귀가 있는 코드의 극장에서.
그 아름다움을 보라, 그 여행을 보라,
방대한 코드의 왕국에서, 그것이 재귀다."
 },
 "logprobs": null,
 "finish_reason": "stop"
 }
 ],
 "usage": {
 "prompt_tokens": 39,
 "completion_tokens": 282,
 "total_tokens": 321
 },
 "system_fingerprint": null
}

이 호출은 작동하는 것 같습니다. 하지만 동일한 Open AI API 키를 사용하여 Discourse AI 기능(예: “composer ai helper”)을 활성화하면 답변이 나오지 않거나, 이 스레드의 첫 번째 게시물에 표시된 오류 메시지가 발생합니다.

Open AI API 호출을 디버깅할 다른 방법이 있을까요?

최신 버전으로 업데이트하셨나요? LLM 설정을 별도의 영역으로 이동했습니다.

지원해 주셔서 감사합니다. 오늘 재구축을 시작했고, 이제 Open AI API 기반 기능들이 정상적으로 작동하는 것 같습니다.

그런데 새로운 문제가 발생했습니다. 재구축 이후 관리자 설정에서 Open AI 모델을 변경할 수 없게 되었습니다. 모델 목록은 비어 있는 것처럼 보이지만, Discourse는 여전히 이전 설정이었던 "gpt-4o"를 사용하고 있습니다.

image

이미 알려진 문제인가요? 재구축을 한 번 더 하면 해결될까요?

죄송합니다. 제 문제의 원인을 찾았습니다. 말씀하신 대로 LLM이 이제 관리자 설정에서 별도의 영역으로 분리되어 있습니다.

Open AI LLM을 정의한 후, 이제 다양한 AI 기능에 사용할 모델을 선택할 수 있습니다.