Spaces:
Runtime error
Runtime error
DongYubin
commited on
Commit
·
f979ae8
1
Parent(s):
fdd702f
更新
Browse files
app.py
CHANGED
|
@@ -13,38 +13,42 @@ os.environ["LANGCHAIN_PROJECT"] = "Sequential-Chain"
|
|
| 13 |
|
| 14 |
|
| 15 |
def main():
|
| 16 |
-
input_checkbox = gr.inputs.Checkbox(label="启用ChatGPT")
|
| 17 |
-
input_api_key = gr.inputs.Textbox(label="ChatGPT API Key", lines=1)
|
| 18 |
-
input_api_base = gr.inputs.Textbox(label="ChatGPT API 地址(默认无地址)", lines=1)
|
| 19 |
-
input_url = gr.inputs.Textbox(label="URL", lines=1)
|
| 20 |
-
def get_inputs(enabled):
|
| 21 |
-
if enabled:
|
| 22 |
-
return [input_api_key, input_api_base]
|
| 23 |
-
else:
|
| 24 |
-
return [input_url]
|
| 25 |
-
inputs = [input_checkbox] + get_inputs(input_checkbox.value)
|
| 26 |
outputs = "text"
|
| 27 |
-
|
| 28 |
-
interface = gr.Interface(fn=my_inference_function, inputs=inputs, outputs=outputs, examples=[["enabled", "api_key", "api_base", "url"]], title="ChatGPT")
|
| 29 |
interface.launch()
|
| 30 |
|
| 31 |
-
def
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
loader = UnstructuredURLLoader(urls=[url])
|
| 39 |
data = loader.load()
|
| 40 |
chain = load_qa_chain(llm=llm, chain_type="stuff")
|
| 41 |
response = chain.run(input_documents=data, question="""请用中文总结文章的内容,并以下面模版给出结果:
|
| 42 |
-
《文章标题》摘要如下:
|
| 43 |
-
## 一句话描述
|
| 44 |
-
文章摘要内容
|
| 45 |
-
## 文章略读
|
| 46 |
-
文章要点""")
|
| 47 |
return response
|
| 48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
if __name__ == '__main__':
|
| 50 |
main()
|
|
|
|
| 13 |
|
| 14 |
|
| 15 |
def main():
|
| 16 |
+
input_checkbox = gr.inputs.Checkbox(label="启用ChatGPT", default=False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17 |
outputs = "text"
|
| 18 |
+
interface = gr.Interface(fn=check_model, inputs=input_checkbox, outputs=outputs)
|
|
|
|
| 19 |
interface.launch()
|
| 20 |
|
| 21 |
+
def check_model(enabled):
|
| 22 |
+
input_api_key = gr.inputs.Textbox(label="ChatGPT API Key", lines=1)
|
| 23 |
+
input_api_base = gr.inputs.Textbox(label="ChatGPT API 地址(默认无地址)", lines=1)
|
| 24 |
+
input_url = gr.inputs.Textbox(label="URL", lines=1)
|
| 25 |
+
if enabled:
|
| 26 |
+
return [input_url,input_api_key, input_api_base]
|
| 27 |
+
else:
|
| 28 |
+
return [input_url]
|
| 29 |
+
|
| 30 |
+
def my_chatgpt_function(api_key, api_base, url):
|
| 31 |
+
os.environ["OPENAI_API_KEY"] = api_key
|
| 32 |
+
os.environ['OPENAI_API_BASE'] = api_base
|
| 33 |
+
llm = OpenAI(temperature=0.7, model_name="gpt-3.5-turbo", max_tokens=1024)
|
| 34 |
loader = UnstructuredURLLoader(urls=[url])
|
| 35 |
data = loader.load()
|
| 36 |
chain = load_qa_chain(llm=llm, chain_type="stuff")
|
| 37 |
response = chain.run(input_documents=data, question="""请用中文总结文章的内容,并以下面模版给出结果:
|
| 38 |
+
《文章标题》摘要如下:
|
| 39 |
+
## 一句话描述
|
| 40 |
+
文章摘要内容
|
| 41 |
+
## 文章略读
|
| 42 |
+
文章要点""")
|
| 43 |
return response
|
| 44 |
|
| 45 |
+
def my_inference_function(url):
|
| 46 |
+
llm = HuggingFaceHub(repo_id="declare-lab/flan-alpaca-large", model_kwargs={"temperature":0.1, "max_length":512})
|
| 47 |
+
loader = UnstructuredURLLoader(urls=[url])
|
| 48 |
+
data = loader.load()
|
| 49 |
+
chain = load_qa_chain(llm=llm, chain_type="stuff")
|
| 50 |
+
response = chain.run(input_documents=data, question="Summarize this article in one paragraph")
|
| 51 |
+
return response
|
| 52 |
+
|
| 53 |
if __name__ == '__main__':
|
| 54 |
main()
|