seawolf2357 commited on
Commit
bb2db31
·
verified ·
1 Parent(s): 21048e8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -45
app.py CHANGED
@@ -1,46 +1,32 @@
1
- # gradio 라이브러리를 gr 별칭으로 임포트합니다.
2
  import gradio as gr
3
- from gradio_client import Client
4
- import httpx
5
-
6
- # Client 객체 생성 시 timeout 매개변수 제거
7
- client = Client("seawolf2357/sajuice")
8
-
9
-
10
-
11
-
12
- # 타임아웃 값을 초 단위로 설정합니다. 예: 읽기 타임아웃을 30초로 설정
13
- timeout_config = httpx.Timeout(5.0, read=30.0)
14
-
15
- try:
16
- # 수정된 타임아웃 설정을 적용하여 클라이언트를 생성합니다.
17
- client = Client("arxivgpt/sajutest", timeout=timeout_config)
18
- print("클라이언트가 성공적으로 생성되었습니다.")
19
- except httpx.ReadTimeout:
20
- print("요청 시간 초과: 서버가 지정된 시간 내에 응답하지 않았습니다.")
21
- except Exception as e:
22
- print(f"예상치 못한 오류가 발생했습니다: {e}")
23
-
24
-
25
- def call_api(생년, 생월, 생일, 생시):
26
- # API를 호출하고 응답값을 받습니다.
27
- result = client.predict(
28
- 생년, # '생년(예: 1990)'에 대한 입력값
29
- 생월, # '생월(예: 01)'에 대한 입력값
30
- 생일, # '생일(예: 31)'에 대한 입력값
31
- 생시, # '생시(예시: 1030)'에 대한 입력값
32
- api_name="/get_lunar_info"
33
- )
34
- return result
35
-
36
- # Gradio 인터페이스를 정의합니다.
37
- inputs = [
38
- gr.Textbox(label="생년(예: 1990)"),
39
- gr.Textbox(label="생월(예: 01)"),
40
- gr.Textbox(label="생일(예: 31)"),
41
- gr.Textbox(label="생시(예시: 1030)")
42
- ]
43
- outputs = gr.Textbox(label="결과")
44
-
45
- # 인터페이스를 생성하고 실행합니다.
46
- gr.Interface(fn=call_api, inputs=inputs, outputs=outputs, title="Get Lunar Info").launch()
 
 
1
  import gradio as gr
2
+ import requests
3
+ from PIL import Image
4
+ from io import BytesIO
5
+
6
+ # 구글 이미지 검색 함수
7
+ def google_image_search(query):
8
+ API_KEY = 'AIzaSyDUz3wkGal0ewRtPlzeMit88bV4hS4ZIVY'
9
+ CX = '여기에_당신의_커스텀_검색엔진_ID를_입력하세요'
10
+ URL = f"https://www.googleapis.com/customsearch/v1?q={query}&cx={CX}&searchType=image&key={API_KEY}"
11
+
12
+ response = requests.get(URL)
13
+ results = response.json()
14
+ images = []
15
+
16
+ for item in results.get('items', []):
17
+ image_url = item['link']
18
+ response = requests.get(image_url)
19
+ img = Image.open(BytesIO(response.content))
20
+ images.append(img)
21
+
22
+ return images
23
+
24
+ # Gradio 인터페이스 정의
25
+ iface = gr.Interface(fn=google_image_search,
26
+ inputs=gr.inputs.Textbox(lines=2, placeholder="검색할 이미지의 텍스트를 입력하세요..."),
27
+ outputs=gr.outputs.Image(type="pil", label="검색 결과"),
28
+ title="구글 이미지 검색",
29
+ description="텍스트를 입력하면 구글 이미지 검색 결과를 보여줍니다.")
30
+
31
+ # 인터페이스 실행
32
+ iface.launch()