| import torch |
| from scipy.spatial.distance import cosine |
| from transformers import AutoModel, AutoTokenizer |
| import gradio as gr |
|
|
| |
| tokenizer = AutoTokenizer.from_pretrained("gomgomcode/material_patent_roberta_simcse") |
| model = AutoModel.from_pretrained("gomgomcode/material_patent_roberta_simcse") |
|
|
| def simcse(text1, text2, text3): |
| |
| texts = [ |
| text1, |
| text2, |
| text3 |
| ] |
| inputs = tokenizer(texts, padding=True, truncation=True, return_tensors="pt") |
|
|
| |
| with torch.no_grad(): |
| embeddings = model(**inputs, output_hidden_states=True, return_dict=True).pooler_output |
|
|
| |
| |
| cosine_sim_0_1 = 1 - cosine(embeddings[0], embeddings[1]) |
| cosine_sim_0_2 = 1 - cosine(embeddings[0], embeddings[2]) |
| |
| return {"cosine similarity":cosine_sim_0_1}, cosine_sim_0_1, {"cosine similarity":cosine_sim_0_2}, cosine_sim_0_2 |
|
|
| inputs = [ |
| gr.components.Textbox(lines=5, label="Input Text One"), |
| gr.components.Textbox(lines=5, label="Input Text Two"), |
| gr.components.Textbox(lines=5, label="Input Text Three") |
| ] |
|
|
| outputs = [ |
| gr.components.Label(label="Cosine similarity between text one and two"), |
| gr.components.Number(label="Cosine similarity between text one and two"), |
| gr.components.Label(label="Cosine similarity between text one and three"), |
| gr.components.Number(label="Cosine similarity between text one and three"), |
| ] |
|
|
| title = "material_patent_roberta_simcse" |
| description = "μ²¨λ¨ μ΅ν© μμ¬ λ°κ΅΄μ μν μΈκ³΅μ§λ₯ μ§μ νλ«νΌ κ°λ° νλ‘μ νΈλ₯Ό μν νΉν μλ² λ© λͺ¨λΈ" |
| article = "<p style='text-align: center'><a href='https://huggingface.co/gomgomcode/material_patent_roberta_simcse'>μ²¨λ¨ μ΅ν© μμ¬ λ°κ΅΄μ μν μΈκ³΅μ§λ₯ μ§μ νλ«νΌ κ°λ° νλ‘μ νΈ:νΉν μλ² λ© λͺ¨λΈ</a></p>" |
| examples = [ |
| ["κ³ μ¨ν μ°λ£μ μ§ λ°μ μ© λ°μ΄μ€κ°μ€ μ μ²λ¦¬ μ΅ν© μμν 곡μ μμ€ν
[μ²κ΅¬ν1] νν©μ₯μΉλ₯Ό ν΅ν΄ 곡κΈλλ λ°μ΄μ€κ°μ€μ ν¬ν¨λ ν©νμμλ₯Ό μ κ±°νλ ν©νμμ μ κ±°λΆ; λκ°μ μ΅μ₯μΉλ₯Ό ν΅ν΄ μκΈ° ν©νμμ μ κ±°λΆλ₯Ό κ±°μΉ λ°μ΄μ€κ°μ€μμ μλΆμ μ κ±°νλ μλΆ μ κ±°λΆ; λΆλ¦¬λ§μ ν΅ν΄ μκΈ° μλΆ μ κ±°λΆλ₯Ό κ±°μΉ λ°μ΄μ€κ°μ€λ₯Ό λ©νμ μλκ° 97% μ΄μλλ λμΆ λ©νκ°μ€μ λ©νκ°μ€ λ° μ΄μ°ννμλ₯Ό ν¬ν¨νλ μμ¬ λ©νκ°μ€λ‘ λΆλ¦¬νλ λ©ν λΆλ¦¬λΆ; μκΈ° μμ¬ λ©νκ°μ€μμ μ΄μ°ννμλ₯Ό μ°νμΉΌμκ³Ό λ°μμμΌ νμ°μΉΌμμ μμ±νμ¬ μμ¬ λ©νκ°μ€μμ λ©νκ°μ€λ₯Ό μ¬λΆλ¦¬νλ νμ°ν ν©μ±λΆμ; νμ±ν ν‘μ°©μ κ±°λ₯Ό ν΅ν΄ μκΈ° λμΆ λ©νκ°μ€ λ° νμ°ν ν©μ±λΆμμ μ¬λΆλ¦¬λ λ©νκ°μ€μμ μ€λ‘μ°μ μ κ±°νλ ν‘μ°©λΆμ; μκΈ° ν‘μ°©λΆμμ μμ±λ κ³ μλ λ©νκ°μ€λ₯Ό μ μ₯νλ λ©ν μ μ₯λΆμ; μκΈ° λ©ν μ μ₯λΆμ μ μ₯λ κ³ μλ λ©νμ 곡κΈλ°μ μμλ‘ κ°μ§νλ λ΄λΆ λ° μΈλΆ κ°μ§λΆμ; μκΈ° λ΄λΆ λ° μΈλΆ κ°μ§λΆλ‘λΆν° κ°μ§λ μμλ₯Ό 곡κΈλ°μ μ λ ₯μ μμ°νλ κ³ μ¨ν μ°λ£μ μ§λ₯Ό ν¬ν¨νλ©°, μκΈ° κ³ μ¨ν λ°μ΄μ€κ°μ€ μ°λ£μ μ§ μμ€ν
μ μκΈ° κ³ μ¨ν μ°λ£μ μ§μμ μμ±λλ νμ΄μ μκΈ° μΈλΆκ°μ§κΈ°λ‘ 곡κΈνμ¬ μκΈ° μΈλΆκ°μ§μ λ°μμ΄λ‘ μ΄μ©νλλ‘ νλ 1μ°¨ νμ΄νμ 곡κΈλΆ λ° μκΈ° κ³ μ¨ν μ°λ£μ μ§μμ μμ±λλ νμ΄μ μκΈ° ν‘μ°©λΆλ‘ 곡κΈνμ¬ μκΈ° ν‘μ°©λΆμ λ°μμ΄λ‘ μ΄μ©νλλ‘ νλ 2μ°¨ νμ΄νμ 곡κΈλΆλ₯Ό λ ν¬ν¨νλ©°, μκΈ° κ³ μ¨ν λ°μ΄μ€κ°μ€ μ°λ£μ μ§ μμ€ν
μ μκΈ° λ΄λΆ λ° μΈλΆ κ°μ§λΆλ‘μ μμ¦κΈ° 곡κΈμ μν μμ¦κΈ° 곡κΈλΆλ₯Ό λ ν¬ν¨νκ³ μκΈ° μμ¦κΈ° 곡κΈλΆλ μκΈ° κ³ μ¨ν μ°λ£μ μ§μμ λ°μλλ λ¬Ό λ° νμ΄ μΌλΆλ₯Ό μ΄μ©νμ¬ μμ¦κΈ°λ₯Ό μμ±νλ κ²μ νΉμ§μΌλ‘ νλ κ³ μ¨ν μ°λ£μ μ§ λ°μ μ© λ°μ΄μ€κ°μ€ μ μ²λ¦¬ μ΅ν© μμν 곡μ μμ€ν
", |
| "μν μ μ₯μμ€λ‘λΆν° λ©νκ°μ€μ νμ λ° μμν λ°©λ² λ° μμ€ν
[μ²κ΅¬ν1] λ©νκ°μ€ νμ μμ€ν
μ μμ΄μ, μν μ μ₯μμ€ λ΄λΆμ μλ¨μ μμΉνμ¬ λ©νκ°μ€μ μμ κ²μΆνλ λ©νκ°μ€ μΌμ; μκΈ° λ©νκ°μ€ μΌμμμ κΈ°μ€μ λ μμΉ μ΄μμ΄ κ²μΆλλ κ²½μ°, λ©νκ°μ€λ₯Ό μ μ₯ ν±ν¬λ‘ μ΄μ‘νλ μμΆ μ΄μ‘λΆ; μκΈ° μμΆ μ΄μ‘λΆλ₯Ό ν΅ν΄μ μ΄μ‘λλ λ©νκ°μ€λ₯Ό μ μ₯νλ μ μ₯ ν±ν¬; λ° μκΈ° μ μ₯ ν±ν¬μ μ μ₯λ λ©νκ°μ€λ₯Ό μ μ νμ¬ κ³ μλμ λ©νκ°μ€λ₯Ό μ μ₯νλ κ³ μλ κ°μ€ μ μ₯λΆ; λ₯Ό ν¬ν¨νκ³ , μκΈ° μμΆ μ΄μ‘λΆλ, μκΈ° μν μ μ₯μμ€ λ΄λΆμ μλ¨μμ ν¬μ§λ κ°μ€ λ° λΆμ§ μ€μμ λΆμ§μ μ κ±°νκΈ° μν λΆμ§ μ κ±°μ© λλ μΈ λ°ΈλΈ; λ° μκΈ° λλ μΈ λ°ΈλΈμλ μλΆμ΄ μΆ©μ λμ΄, ν¬μ§λ κ°μ€κ° μλΆμ ν΅κ³ΌνκΈ° μν μλ ₯μ 곡κΈνλ 곡κΈλΆ;λ₯Ό λ ν¬ν¨νλ κ²μ νΉμ§μΌλ‘ νλ, λ©νκ°μ€ νμ μμ€ν
", |
| "λ΄ν©μ± μ΄λ§€λ₯Ό μ΄μ©ν ν©-ν¨μ ννμμμ κ°μ§ [μ²κ΅¬ν1] ν©ν¨μ ννμμ 곡κΈλ¬Όμ μ¦κΈ° λ° λ΄ν©μ± μ΄λ§€μ 300 β μ΄μμ μ¨λμμ μμ μ μκ° λμ μ μ΄μμΌ λ΄ν©μ± μ΄λ§€κ° ν©ν¨μ ννμμ 곡κΈλ¬Ό μ€ ν©μ μ μ΄λ μΌλΆλ₯Ό ν‘μ°©νκ³ μκΈ° 곡κΈλ¬Όμ κ°μ§μμΌ, ν© μ ν¨λ κ°μ§λ¬Όμ μμ§νλ λ¨κ³; λ°λ΄ν©μ± μ΄λ§€μ μ°μν¨μ 기체λ₯Ό μ μ΄μμΌ ν‘μ°©λ ν©μ μ μ΄λ μΌλΆλ₯Ό λ΄ν©μ± μ΄λ§€μμ νμ°©λλ ν© μ°νλ¬Όλ‘ μ ννλ λ¨κ³λ₯Ό ν¬ν¨νλ©°, μ¬κΈ°μ μκΈ° λ΄ν©μ± μ΄λ§€λ λ°±κΈ λ° λ‘λ λ° λΉ-ν©ν λ΄μ²΄μ νΌν©λ¬Όλ‘ μ΄λ£¨μ΄μ§ κ²μΈ, ν©ν¨μ ννμμμ κ°μ§ λ°©λ²"], |
| ["λλ―Έ ν¨ν΄μ κ°λ λ°λ체 μμ λ° κ·Έ νμ±λ°©λ² [μ²κ΅¬ν1] ν¨ν΄ νμ±μμ λ° λλ―Έ μμμ ν¬ν¨νλ λ°λ체 κΈ°ν;μκΈ° λ°λ체 κΈ°ν μμ νμ±λ μΈ΅κ°μ μ°λ§;μκΈ° μΈ΅κ°μ μ°λ§ μμ ν¨ν΄ νμ±μμ μμ νμ±λ λ°λ체측 ν¨ν΄;μκΈ° ν¨ν΄ νμ±μμμ μΈ΅κ°μ μ°λ§ λ΄μ λ°°μΉλλ©΄μ μκΈ° λ°λ체측 ν¨ν΄κ³Ό μκΈ° λ°λ체 κΈ°νμ μ°κ²°νλ 컨ννλ¬κ·Έ; μκΈ° λλ―Έ μμμ μΈ΅κ°μ μ°λ§ μμ νμ±λλ©° μκΈ° ν¨ν΄ νμ±μμμ λ¨μ°¨λ₯Ό μνμν€λ λλ―Έ ν¨ν΄;μκΈ° λλ―Έ ν¨ν΄ νλΆμ μκΈ° μΈ΅κ°μ μ°λ§ λ΄μ μκΈ° λ°λ체 κΈ°νκ³Ό μ°κ²°λμ§ μκ² νμ±λμ΄ μκΈ° λλ―Έ ν¨ν΄μ΄ μ΄ννμ§ μκ² κ³ μ νλ λλ―Έ νλ¬κ·Έλ₯Ό ν¬ν¨νλ κ²μ νΉμ§μΌλ‘ νλ λλ―Έ ν¨ν΄μ κ°λ λ°λ체 μμ", |
| "λ°λ체 κΈ°νμ μλΆμ μκ° λμλ§μ νμ±νλ λ¨κ³;μκΈ° μκ° λμλ§μ μλΆμ μ 1 λ° μ 2 μκ° λ³΄μ‘°λ§μ μ μΈ΅νλ λ¨κ³;μκΈ° μ 2 μκ° λ³΄μ‘°λ§μ μλΆμ ν¬ν λ μ§μ€νΈ ν¨ν΄μ νμ±νλ λ¨κ³;μκΈ° ν¬ν λ μ§μ€νΈ ν¨ν΄μ μκ° λ² λ¦¬μ΄λ‘ μ΄μ©ν μκ° κ³΅μ μΌλ‘ μκΈ° μ 1 λ° μ 2 μκ° λ³΄μ‘°λ§μ μκ°νμ¬ μ 1 λ° μ 2 μκ° λ³΄μ‘° ν¨ν΄μ νμ±νλ λ¨κ³;μκΈ° μ 1 μκ° λ³΄μ‘° ν¨ν΄μ μΈ‘λ²½μ μκ°νλ λ¨κ³; λ°μκΈ° μ 1 μκ° λ³΄μ‘° ν¨ν΄μ μκ° λ² λ¦¬μ΄λ‘ μ΄μ©ν μκ° κ³΅μ μΌλ‘ μκΈ° μκ° λμλ§μ μκ°νλ λ¨κ³λ₯Ό ν¬ν¨νλ λ°λ체 μμμ ν¨ν΄ νμ±λ°©λ².", |
| "λ³Έ λ°λͺ
μ μ€μμλ νλ μλΈ νμν¨λμ λ κ°μ§ μ΄μμ ννλ₯Ό μμ μ μΌλ‘ μ μ§νλ μμμ (bistability)μ΄ κ°λ₯νλλ‘ κ΅¬νν¨μΌλ‘μ¨ λ κ°μ§ μ΄μμ ννλ‘ λ³κ²½λ μ μλ νλ μλΈ νμμ₯μΉμ κ΄ν κ²μ΄λ€. λ³Έ λ°λͺ
μ μΌ μ€μμμ λ°λ₯Έ νλ μλΈ νμμ₯μΉλ νλΆ κΈ°ν, νλΌμ€ν± νλ¦, μ 1 λ° μ 2 νν λ³κ²½ μλ¨λ€μ ν¬ν¨νλ€. μκΈ° νλΆ κΈ°νμ μ μ΄λ λ κ°μ§μ ννλ₯Ό μμ μ μΌλ‘ μ μ§νλ μμμ μ΄ κ°λ₯ν λ¬Όμ§λ‘ μ΄λ£¨μ΄μ§λ€. μκΈ° νλΌμ€ν± κΈ°νμ μκΈ° νλΆ κΈ°ν μμ λ°°μΉλλ©°, νμ μ΄λ μ΄κ° νμ±λλ€. μκΈ° μ 1 νν λ³κ²½ μλ¨μ μκΈ° νλΆ κΈ°νμ μ 1 μμ μνλ‘ λ³ννκΈ° μν΄ μκΈ° νλΆ κΈ°νμ μΌλ©΄μ λ°°μΉλλ€. μκΈ° μ 2 νν λ³κ²½ μλ¨μ μ 2 μμ μνλ‘ λ³ννκΈ° μν΄ μκΈ° νλΆ κΈ°νμ μΌλ©΄μ λ°λλ©΄μ λ°°μΉλλ€."], |
| ["μ κΈ° μλμ°¨ νλ°°ν°λ¦¬λͺ¨λ μ²λ¦¬ λ°©λ² λ° μμμ¬νμ© μμ€ν
[μ²κ΅¬ν1] (S10) λ€μμ μ
(cell)μ΄ λ΄μ₯λ νλ°°ν°λ¦¬λͺ¨λμ 5λΆ λ΄μ§ 20λΆ λμ μ‘체 μ§μμ μΉ¨μ§νμ¬ κΈμ λκ²°νλ λ¨κ³; (S20) μκΈ° λκ²°λ νλ°°ν°λ¦¬λͺ¨λμ 30μ΄ λ΄μ§ 180μ΄ λμ μμ¨μ λ°©μΉνλ λ¨κ³; (S30) μκΈ° λ°©μΉλ νλ°°ν°λ¦¬λͺ¨λμ μ‘체 μ§μλ₯Ό 30μ΄, 60μ΄, λλ 90μ΄ κ°κ²©μΌλ‘ 곡κΈνλ©΄μ νμνλ λ¨κ³; λ° (S40) μκΈ° νμλ¬Όλ‘λΆν° κΈμ, νλΌμ€ν±, λΆλ¦¬λ§ λ° μ
(cell)μ μ κ·Ήνλ¬Όμ§μ λΆλ¦¬νλ λ¨κ³;λ₯Ό ν¬ν¨νλ μ κΈ° μλμ°¨μ νλ°°ν°λ¦¬λͺ¨λμ μ²λ¦¬νλ λ°©λ².", |
| "컀ν¨μν° νμ¬λ¬μ§λ‘λΆν° μ κ·Ή μμ¬ μ¬μ λ°©λ² [μ²κ΅¬ν1] (a) 컀ν¨μν° νμ¬λ¬μ§ μ‘μ μ μμ±νλ λ¨κ³; (b) μκΈ° μ‘μ μ λΆλ¬΄κ±΄μ‘°μ±λ²μμ 100 λ΄μ§ 200 βλ‘ λΆλ¬΄κ±΄μ‘°μμΌ λΆλ§μ μμ±νλ λ¨κ³; (c) μκΈ° λΆλ§μ μ΄μ²λ¦¬λ‘μμ 300 λ΄μ§ 400 βμμ μ΄μ²λ¦¬νλ λ¨κ³; λ° (d) μκΈ° μ΄μ²λ¦¬λ λΆλ§μ 200 λ΄μ§ 300 βμμ μ΄λλ§νλ λ¨κ³;λ₯Ό ν¬ν¨νλ κ²μ νΉμ§μΌλ‘ νλ, 컀ν¨μν° νμ¬λ¬μ§λ‘λΆν° μ κ·Ή μμ¬ μ¬μ λ°©λ²", |
| "λ³Έ λ°λͺ
μ ν΄λ¦¬μνΈλ ν
λ ννλ μ΄νΈ νκΈ°λ¬Όμ κΈλ¦¬μ½λ₯ λ¬Όμ§κ³Ό μ΄λ§€ νμμ μμ€ν
λ₯΄ κ΅ν λ°μμΌλ‘ ν΄μ€ν© νλ λ¨λ체 νμ±λ¨κ³μ, μ¦λ₯ λ°©λ²μΌλ‘ λ¨λ체 νμ±λ¨κ³μμ λ§λ€μ΄μ§ ν΄μ€ν©λ¬Όμ λ¨μμλ κΈλ¦¬μ½λ₯ λ¬Όμ§μ νμνλ μ 1 νμλ¨κ³μ, κΈλ¦¬μ½λ₯ λ¬Όμ§μ΄ νμλ ν΄μ€ν©λ¬Όμ λ¨λ체μ μ€ν©μ²΄λ‘ λΆλ¦¬ νμνλ μ 2 νμλ¨κ³λ₯Ό ν¬ν¨νμ¬ μ΄λ£¨μ΄μ§λ©°, μ 2 νμλ¨κ³μ μΈλΆ ꡬμ±μ λ°λΌ νκ²½μ€μΌ μ΅μν, μλμ§ μ κ°, BHET μλ μμΉ, 곡μ λ¨μν ν¨κ³Όλ₯Ό κ°μ§λ ν΄λ¦¬μνΈλ ν
λ ννλ μ΄νΈμ λΉμ€ν
λ ννλ μ΄νΈ λΆλ¦¬ λ° νμλ°©λ²μ κ΄ν κ²μ΄λ€."] |
| ] |
|
|
| gr.Interface(simcse, inputs, outputs, title=title, description=description, article=article, examples=examples).launch(share=True) |
|
|