Spaces:
Sleeping
Sleeping
File size: 5,449 Bytes
5f7a558 4a6dc69 5f7a558 770d00e 1c38e22 5f7a558 4a6dc69 5f7a558 770d00e 5f7a558 770d00e 5f7a558 770d00e 5f7a558 770d00e 5f7a558 770d00e 5f7a558 770d00e 5f7a558 770d00e 1c38e22 5a0e689 1c38e22 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | import streamlit as st
from jreadability import compute_readability
st.set_page_config(
page_title='jReadability demo',
page_icon='favicon.svg',
)
st.markdown("[Code for jreadability python [package](https://github.com/joshdavham/jreadability) and [demo](https://github.com/joshdavham/jreadability-demo)]")
lower_intermediate_text = "茶々はわたしの日本語の先輩でした。毎日、日本語を一生懸命勉強して3か月ぐらいたったころには、日本人の友達といろいろな話もできるようになりました。そして茶々よりも日本語がわかるようになりました。けれどわたしの日本語の発音はまだ上手ではありません。家の人はわかってくれますが、茶々はわかりません。「おいで」と言っても茶々は来ません。「ちょっと見てごらん」と言っても見ません。「散歩に行こう」と言ってもふりむいてくれません。だから、いっしょに散歩することもできません。わたしの発音が家の人とちがうからです。それが大変ざんねんでした。それで、わたしはテープをたくさん聞いて練習しました。そして、はじめて茶々がわたしの「おいで」を聞いて、わたしのところへ来てくれた時は、本当にうれしくなりました。\
わたしの日本語がやっと茶々につうじたからです。今は、わたしは日本の生活にだいぶなれました。茶々はもう、わたしの日本語が大体わかりますから、毎日いっしょに散歩します。わたしの日本語の先輩、茶々のおかげで日本語も上手になったし、犬がこわくなくなって、犬が好きになりました。今度、わたしは茶々に中国語を教えようと思います。そして、中国語と日本語と、二つのことばのわかる犬にするつもりです。"
st.image("logo.svg", use_column_width=False, width=350)
text = st.text_area(
label="Input Japanese text below and then click the button",
label_visibility='visible',
height=350,
max_chars=None,
key='text-input',
placeholder='Enter a paragraph of Japanese text.',
value = lower_intermediate_text,
)
if st.button("Compute readability"):
if text:
score = compute_readability(text)
if 0.5 <= score < 6.5:
if 0.5 <= score < 1.5:
st.error(f"Readability score: **{score:.2f}** \nLevel: **Upper-advanced**")
elif 1.5 <= score < 2.5:
st.error(f"Readability score: **{score:.2f}** \nLevel: **Lower-advanced**")
elif 2.5 <= score < 3.5:
st.info(f"Readability score: **{score:.2f}** \nLevel: **Upper-intermediate**")
elif 3.5 <= score < 4.5:
st.info(f"Readability score: **{score:.2f}** \nLevel: **Lower-intermediate**")
elif 4.5 <= score < 5.5:
st.success(f"Readability score: **{score:.2f}** \nLevel: **Upper-elementary**")
elif 5.5 <= score < 6.5:
st.success(f"Readability score: **{score:.2f}** \nLevel: **Lower-elementary**")
st.progress(1-((score - 0.5) / 6.0) )
else:
st.warning(f"Readability score: **{score:.2f}** \nLevel: **Undefined**")
else:
st.info(f"Readability score: \nLevel:")
st.progress(0.0)
else:
st.info(f"Readability score: \nLevel:")
st.progress(0.0)
st.markdown("---")
st.markdown(
"""
## Readability scores
| Level | Readability score range |
|--------------------|-------------------------|
| Upper-advanced | [0.5, 1.5) |
| Lower-advanced | [1.5, 2.5) |
| Upper-intermediate | [2.5, 3.5) |
| Lower-intermediate | [3.5, 4.5) |
| Upper-elementary | [4.5, 5.5) |
| Lower-elementary | [5.5, 6.5) |
"""
)
st.markdown(
"""
### Model
```
readability = {mean number of words per sentence} * -0.056
+ {percentage of kango} * -0.126
+ {percentage of wago} * -0.042
+ {percentage of verbs} * -0.145
+ {percentage of particles} * -0.044
+ 11.724
```
*\\* "kango" (漢語) means Japanese word of Chinese origin while "wago" (和語) means native Japanese word.*
"""
)
st.markdown("---")
st.markdown(
"""
### About
This website simply serves as a demo of the [jreadability python package](https://github.com/joshdavham/jreadability) which is an unofficial implementation of the model developed by
Jae-ho Lee and Yoichiro Hasebe in [Introducing a readability evaluation system for Japanese language education](https://jreadability.net/file/hasebe-lee-2015-castelj.pdf)
and [Readability measurement of Japanese texts based on levelled corpora](https://researchmap.jp/jhlee/published_papers/21426109).
This website is also heavily inspired from the official [jreadability.net](https://jreadability.net/sys/en) (which is a much better site!)
As for why I built this demo, I was just inspired by Paul O'Leary McCann's [demo](https://fugashi.streamlit.app/) of [fugashi](https://github.com/polm/fugashi) and thought it'd be cool if more python packages had demos like that.
"""
) |