커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
api 오류로 작동이 되지 않아요!
나만의 ChatGPT 서비스 만들기 v0
기타
북마크
우*아
댓글
3
추천
0
조회수
11
조회수
11
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


발급 받은 API가 작동이 어려운 것으로 확인 됩니다 해당 API 이용해서 강의에서 실행한 부분은 정상 작동이 되는데 

이 app.py 부분만 이용이 어렵습니다

발급 받은  key 에 밸런스(잔액) 도 9 달러 이상 남아 있어 밸런스 문제는 아닌것 으로 사료되며


이 경우 새로운 API 를 발급 받아야 하는지 여쭤 보고자 합니다
참고로 보안이슈로 실제  제 API 가 아닌 os.environ  "my api is here!"
그럼 답변 기다리겠습니다 감사합니다.

Chatbot Error: Incorrect API key provided: LOpsZy1Z************************************************************************************************************************************************O6oA. You can find your API key at https://platform.openai.com/account/api-keys.
Image Generation Error: Incorrect API key provided: LOpsZy1Z***************************************************************************************************  Stopping...




스파르타 즉문즉답스파르타 즉문즉답





import streamlit as st
import openai
import os
from PIL import Image


os.environ["OPENAI_API_KEY"] = "my api is here!"



def chatbot_response(user_input):
    try:
        response = openai.ChatCompletion.create(
            model="gpt-4",  
            messages=[
                {"role": "system", "content": "너는 사용자가 입력한 꿈 내용을 분석하고 그에 따른 심리 상태를 해석한 후 해결책을 알려주는 역할이야. 채팅이 끝나면 그림을 그려서 사용자에게 보여줘야 해."},
                {"role": "user", "content": user_input}
            ],
            temperature=0.7,  
            max_tokens=1500,  
        )
        return response.choices[0].message['content']
    except Exception as e:
        st.write(f"Chatbot Error: {e}")
        return "지금은 일하고 싶지 않나봐요 :( 좀 이따 다시 와주세요!"


def generate_image(prompt):
    try:
        response = openai.Image.create(
            prompt=prompt,
            n=1,
            size="1024x1024"
        )
        image_url = response['data'][0]['url']
        return image_url
    except Exception as e:
        st.write(f"Image Generation Error: {e}")
        return None



st.set_page_config(layout="wide")



if "chat_history" not in st.session_state:
    st.session_state.chat_history = []  



if "page" not in st.session_state:
    st.session_state.page = "조고예몽 메인"


if "button_clicked" not in st.session_state:
    st.session_state.button_clicked = False



def select_page(page_name):
    st.session_state.page = page_name
    
col1, col_space, col2 = st.columns([1, 1.5, 2.2])



with col1:
    st.markdown('<div class="image-wrapper">', unsafe_allow_html=True)
    image_path = "images/zogoemong.jpg"
    image = Image.open(image_path)
    st.image(image, caption=" ", use_column_width=False, width=400)
    st.markdown('</div>', unsafe_allow_html=True)


    st.markdown('<br><br><br>', unsafe_allow_html=True)
    st.header("조고예몽 메인&nbsp;&nbsp;🐈", divider="violet")
    st.markdown("made by. jia_2024")



with col2:
    st.write("**조고예몽에 어서오세요**")
    st.image("images/채팅창.jpg", width=500, caption=" ")


    message = st.empty()


    def display_chat_history():
        with message.container():
            for chat in st.session_state.chat_history:
                st.write(chat)


    if "conversation_started" not in st.session_state:
        st.session_state.conversation_started = True
        st.write("**[달래]** 안녕👋 밤 새 잘 잤어?")
    
    display_chat_history()  



    if not st.session_state.button_clicked:
        col_btn1, col_btn2 = st.columns([0.5, 0.5])


        with col_btn1:
            if st.button("응! 정말 개운하게 잘 잤어 🌞", key="button1"):
                st.session_state.chat_history.append("**[사용자]** 응! 정말 개운하게 잘 잤어 🌞")
                st.session_state.chat_history.append("**[달래]** 다행이다! 잘 잔 만큼 좋은 꿈도 풀어줘야 의미가 있는 법!")
                st.session_state.chat_history.append("**[달래]** 아래 채팅창에 꿈 내용을 적어서 나에게 줘")
                st.session_state.button_clicked = True



        with col_btn2:
            if st.button("아니 너무 피곤해 죽을거 같아 😴", key="button2"):
                st.session_state.chat_history.append("**[사용자]** 아니 너무 피곤해 죽을거 같아 😴")
                st.session_state.chat_history.append("**[달래]** 에구, 왜 잠을 못 잤을까?")
                st.session_state.chat_history.append("**[달래]** 좀 더 나은 하루가 될 수 있도록 내가 도와 주려고 해")
                st.session_state.chat_history.append("**[달래]** 아래 채팅창에 꿈 내용을 적어서 나에게 줘")
                st.session_state.button_clicked = True



    user_input = st.text_input("메시지 입력", key="chat_input", placeholder="꿈 내용을 적어주세요...")
    send_button = st.button("보내기", key="send_button")



    if send_button and user_input.strip():
        st.session_state.chat_history.append(f"**[사용자]** {user_input}")


        chatbot_reply = chatbot_response(user_input)
        st.session_state.chat_history.append(f"**[달래]** {chatbot_reply}")


        image_prompt = f"꿈 내용에 기반한 이미지: {user_input}" 
        image_url = generate_image(image_prompt)
        
        if image_url:
            st.session_state.chat_history.append(f"**[달래]** [이미지 보기]({image_url})")
            st.session_state.chat_history.append("**[달래]** 오늘 너의 꿈일기를 그려 봤어. 오늘도 좋은 하루 되길 바랄게!")
        else:
            st.session_state.chat_history.append("**[달래]** 이미지를 생성하는 데 문제가 발생했습니다.")


        display_chat_history()



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴