'Chat-GPT G5 Board V2' Chat-GPT API 연동 게시판 > 그누보드5 스킨

그누보드5 스킨

좋은 댓글과 좋아요는 제작자에게 큰힘이 됩니다.

'Chat-GPT G5 Board V2' Chat-GPT API 연동 게시판 정보

게시판 'Chat-GPT G5 Board V2' Chat-GPT API 연동 게시판

첨부파일

basic_gpt_v2.zip (36.6K) 165회 다운로드 2023-04-07 19:41:02
테스트한 버전5.5.8.2.8
호환 가능 버전그누보드(영카트) 5.5.8~

본문

 

사용법:

1. 테마가 아닌 '../skin/board/basic_gpt' 와 같이 업로드
2. ChatGPT.js 첫번째 라인에(OPENAI_API_KEY) 발급받은 KEY 삽입 저장

 

*주의: 로그인 한 회원만 보이게 처리해 놓았습니다. 관련 해제를 하시려면 

       'write.skin.php',  'view_comment.skin.php' 의

 

       <?php if ($is_member) { // 회원만 GPT 사용 ?>

                    ]]]]]]]] 내용 [[[[[[[[[

       <?php } // 회원만 GPT 사용 End ?>

 

부분을 찾아 지워주세요.

 

-----------------------------------
GPT KEY 발급: https://platform.openai.com/account/api-keys
Test URL: 

-----------------------------------

 

P.s...전업을 한 상태고 책상에 앉아 있는 시간이 얼마 되지 않아 앞으로의 업그레이드가 미지수입니다. 해당 스킨은 누구나 상업 또는 재편집이 가능하니 좋게 잘 만들어 올려 주셨으면 합니다.

 

즐거운 주말들 되세요!!!

 

 

 

[서비스 이용안내]

 

 

1. 내용입력

2049344688_1680863351.2235.jpg

 

 

2. 댓글입력

2049344688_1680863371.9622.jpg

추천
16

댓글 전체

고맙습니다. 리자님이 chatGpt code를 배포하신 적이 있는데요.
챗GPT를 게시판에 적용하기가 쉽지 않은데 그 모든 수고를 감당해주셔서 감사한 마음을 전합니다.
css로 나이스하게 꾸미고, list.skin.php, view.skin.php에 자기만의 필요한 기능을 추가해서 넣으면 운영하는 홈페이지에 최적화된 chatGPT를 만들수 있을것 같습니다.
"그누보드로 커뮤니티 사이트를 만드는 방법을 알려주세요(Please let me know how to make community website using gnuboard that provided by sir.kr)"라고 질문하니 다음처럼 나오네요.^^
생성된 내용을 수정모드에서 highlight를 주었습니다.
http://egis.kr/bbs/board.php?bo_table=basic_test&wr_id=24
감사합니다.
이 플러그인을 사용했습니다 https://sir.kr/g5_plugin/9655?sfl=wr_name%2C1&stx=%EB%B9%84%ED%83%80%EC%A3%BC%EB%A6%AC&page=2
openai.com의 챗gpt에서는 물어봤을때 코드는 자동으로 하이라이트가 되게 나오는데요.
이 스킨은 생성단계에서 하이라이트를 적용하려면 별도로 커스텀을 해야할겁니다.
위의 플러그인을 사용하여서 글을 생성한후에 수정단계에서 하이라이트를 적용합니다.
다음 코드를 view.skin.php 파일의 맨 하단에 넣어줍니다
<link rel=stylesheet href=//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/styles/a11y-dark.min.css>
<script src=//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js></script>
<style>
pre { position:relative; -ms-overflow-style:none; }
pre::-webkit-scrollbar { display:none; }
.copyButton { position:absolute; cursor:pointer; top:10px; right:10px; }
</style>
<script>
copyImage = "http://www.mediaplayer.kr/main/wittazzurri/code/copy_hand.png";
copyMp3 = "http://www.mediaplayer.kr/main/wittazzurri/code/copy_sound.mp3";
document.write("<div class=cmt_contents style=display:none></div>");
commentZone = document.getElementsByClassName("cmt_contents");
cmtLimit = commentZone.length;
for (cmt = 0; cmt < cmtLimit; cmt++) commentZone[cmt].id = "cmt_num_" + (Number(cmt) + 1);
editorName = "<?php echo $board['bo_use_dhtml_editor'] ? $config['cf_editor'] : "none"; ?>";
function codeCopy() {
    copyText.style.display = "block";
    copyText.value = arguments[0].innerText.trim();
    copyText.select();
    document.execCommand("copy");
    copyText.style.display = "none";
    copySound.play();
    alert("COPY CODE!!!");
}
function hlMode() {
    this[arguments[0]].innerHTML = this[arguments[0]].innerHTML.replace(/\[code\]/gi, "<div name=code_" + arguments[0] + ">").replace(/\[\/code\]/gi, "</div>");
    nameN = document.getElementsByName("code_" + arguments[0]);
    for (n = 0; n < nameN.length; n++) {
        if (arguments[0] == "bo_v_con") {
            if (editorName == "smarteditor2") changeCode = (nameN[n].innerHTML.replace(/\<p\>/gi, "").replace(/\<\/p\>/gi, "<br>") + "<br>").replace(/\<br\>\<br\>/gi, "<br>");
            else if (editorName == "cheditor5") changeCode = nameN[n].innerHTML.replace(/<(\/p|p)([^>]*)>/gi, "") + "<br>";
            else if (editorName == "none") changeCode = nameN[n].innerHTML.replace(/\<br\>\<br\>/gi, "*br*").replace(/\<br\>/gi, "").replace(/\*br\*/gi, "<br>") + "<br>";
        }
        else changeCode = nameN[n].innerHTML.replace(/\<br\>\<br\>/gi, "*br*").replace(/\<br\>/gi, "").replace(/\*br\*/gi, "<br>") + "<br>";
        nameN[n].innerHTML = "<pre><code>" + changeCode + "<img class=copyButton src=" + copyImage + " onclick=codeCopy(parentElement)></code></pre>";
    }
}
hlGroup = ["bo_v_con"];
for (cmtPlus = 0; cmtPlus < cmtLimit; cmtPlus++) hlGroup.push(commentZone[cmtPlus].id);
for (hl in hlGroup) hlMode(hlGroup[hl]);
hljs.initHighlighting();
document.write("<textarea id=copyText style=display:none></textarea>");
document.write("<audio id=copySound src=" + copyMp3 + " ></audio>");
codeZone = document.getElementsByTagName("code");
for (cz = 0; cz < codeZone.length; cz++) {
    codeZone[cz].style.fontSize = "1rem";
    codeZone[cz].style.fontFamily = "times";
    codeZone[cz].style.padding = "20px";
    codeZone[cz].style.borderRadius = "15px";
    codeZone[cz].style.backgroundColor = "#000000";
}
</script>
좋은 스킨 감사합니다.

PS. 오픈API키를 JS파일에 적으면 안 될 것 같아요. 키 발급하는 곳에 이런 멘트가.....

API 키를 다른 사람과 공유하거나 브라우저 또는 기타 클라이언트측 코드에 노출하지 마십시오. 계정의 보안을 보호하기 위해 OpenAI는 공개적으로 유출된 API 키를 자동으로 교체할 수도 있습니다.
댓글에서 답변이 나오는데 답변 샹단에

ChatGPT 답변 --> 이 문구를 어디에 넣으면 되는지요?

여기서 부터 답변입니다


---------------------------
그리고 질문과 답변의 간격이 개인적으로 조금 넓은 것 같아서 조절하려고 하는데
어디서 조절하면 되는지요?
제가 지금 여행중이라 화요일에나 피드백이 되겠습니다. 개행문제, 키 노출 문제에 대한 피드백 감사드리며 진주 내려가면 패치해서 다시 올려보겠습니다.
아이콘을 누르면 아이콘이 사라져버립니다... 왜그런걸까요 ㅠ? f12를 눌렀을 땐

Uncaught TypeError: Cannot set properties of null (setting 'onclick')
    at write.php?bo_table=test:548:44
(anonymous) @ write.php?bo_table=test:548

라는 오류가 발생합니다.
위 오류와 이것저것을 수정하다가 보니 다시 만들게 되었는데 그 부분은 살펴보겠습니다.

 근데 브라우저와 그누버전이 뭔가요? 제게는 확인이 되지 않는 부분이라서요.
네 현재 코멘트에서 지피티 기능을 사용해서 답변을 얻을 수 있는데 답변이 나오면 코멘트 글쓰기를 해야 합니다.
그냥 글쓰기 과정 없이 답변을 얻으면 자동으로 코멘트가 입력이 되면
더 편할 것 같다는 개인적인 생각인데...다른 분 견해는 다를 수 있으니
판단해서 하시기 바랍니다
감사합니다
제목의 첫 마디가 주제(프롬프트 주어)--> 내용 --> 내용 요약 --> 제목 프롬프트+내용 요약 질의-->댓글 10개

이런식의 배열을 만들어 프롬프트에 자동으로 넣어 처리하면 가능하겠습니다. 인터넷에 예제들이 많으니 주말에 한번 만들어 보세요. 재미있겠네요.
안녕하세요 위 자료는 그누 순정에서만 이용이 가능한건가요? 나리야 빌더+테마 이용자인데 글쓸때 gpt 아이콘을 누르면 컨테이너가 열리는게 아니고, 버튼 아이콘이 사라지고 다른 위치를 클릭하면 다시 아이콘이 나타나는 현상으로 이용이 않되네요.

감사합니다. 
Error: You exceeded your current quota, please check your plan and billing details.
현재 할당량을 초과했습니다. 요금제와 결제 세부정보를 확인하세요.

ㅠ.ㅠ

전체 88 |RSS
그누보드5 스킨 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT