Spaces:
Sleeping
Sleeping
Commit
·
a4998d2
0
Parent(s):
last try work around
Browse files- .gitattributes +35 -0
- .gitignore +1 -0
- README.md +13 -0
- app.py +465 -0
- data/test.json +57 -0
- data/test.txt +68 -0
- poetry.lock +0 -0
- pyproject.toml +20 -0
- requirements.txt +6 -0
- setup.sh +3 -0
.gitattributes
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
.gitignore
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
/tmp
|
README.md
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
title: Family Compatibility
|
3 |
+
emoji: 📊
|
4 |
+
colorFrom: blue
|
5 |
+
colorTo: yellow
|
6 |
+
sdk: streamlit
|
7 |
+
sdk_version: 1.39.0
|
8 |
+
app_file: app.py
|
9 |
+
pinned: false
|
10 |
+
short_description: Playground and Overview for the family compatibility model
|
11 |
+
---
|
12 |
+
|
13 |
+
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
app.py
ADDED
@@ -0,0 +1,465 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import sys
|
3 |
+
import streamlit as st
|
4 |
+
from dotenv import load_dotenv, find_dotenv
|
5 |
+
from huggingface_hub import snapshot_download # type: ignore
|
6 |
+
import spacy
|
7 |
+
from spacy_streamlit import visualize_spans
|
8 |
+
import plotly.graph_objects as go
|
9 |
+
import json
|
10 |
+
from io import StringIO
|
11 |
+
|
12 |
+
load_dotenv(find_dotenv())
|
13 |
+
ANFORDERUNGEN = [
|
14 |
+
"Präsenzpflicht",
|
15 |
+
"Räumliche Flexibilität",
|
16 |
+
"Zeitliche Flexibilität",
|
17 |
+
"Schichtdienst",
|
18 |
+
"Flexibiltät (SK) = Flexibilität (Soft Skill)",
|
19 |
+
]
|
20 |
+
ANGEBOTE = [
|
21 |
+
"Planbarkeit und Verlässlichkeit",
|
22 |
+
"Flexible und gestaltbare Dienstpläne und Schichtmodelle",
|
23 |
+
"flexible und gestaltbare Arbeitszeiten",
|
24 |
+
"Wahl des Arbeitszeitumfangs",
|
25 |
+
"Job-Sharing",
|
26 |
+
"Vereinbarkeit",
|
27 |
+
"Unterstützung bei der Kinderbetreuung",
|
28 |
+
"wohnortnahe Einsätze",
|
29 |
+
"Finanzielle Unterstützung",
|
30 |
+
"Familiäre und anlassbezogene Freistellung",
|
31 |
+
"Unterstützung bei der Pflegeverantwortung",
|
32 |
+
]
|
33 |
+
|
34 |
+
ALL_CONCEPTS = (
|
35 |
+
ANFORDERUNGEN
|
36 |
+
+ ANGEBOTE
|
37 |
+
+ [
|
38 |
+
"Anforderungen an Bewerber:innen",
|
39 |
+
"Anforderungen an Arbeitsort",
|
40 |
+
"Zeitliche",
|
41 |
+
"Flexibilität",
|
42 |
+
"Angebote an Bewerber:innen",
|
43 |
+
"Zeitsouveränität",
|
44 |
+
"Familienfreundliche Konzepte",
|
45 |
+
]
|
46 |
+
)
|
47 |
+
PARENTS = [
|
48 |
+
"Anforderungen an Arbeitsort",
|
49 |
+
"Anforderungen an Arbeitsort",
|
50 |
+
"Zeitliche",
|
51 |
+
"Zeitliche",
|
52 |
+
"Flexibilität",
|
53 |
+
"Zeitsouveränität",
|
54 |
+
"Zeitsouveränität",
|
55 |
+
"Zeitsouveränität",
|
56 |
+
"Zeitsouveränität",
|
57 |
+
"Zeitsouveränität",
|
58 |
+
"Familienfreundliche Konzepte",
|
59 |
+
"Familienfreundliche Konzepte",
|
60 |
+
"Familienfreundliche Konzepte",
|
61 |
+
"Familienfreundliche Konzepte",
|
62 |
+
"Familienfreundliche Konzepte",
|
63 |
+
"Familienfreundliche Konzepte",
|
64 |
+
"",
|
65 |
+
"Anforderungen an Bewerber:innen",
|
66 |
+
"Anforderungen an Bewerber:innen",
|
67 |
+
"Anforderungen an Bewerber:innen",
|
68 |
+
"",
|
69 |
+
"Angebote an Bewerber:innen",
|
70 |
+
"Angebote an Bewerber:innen",
|
71 |
+
]
|
72 |
+
fig = go.Figure(
|
73 |
+
go.Treemap(
|
74 |
+
labels=ALL_CONCEPTS,
|
75 |
+
parents=PARENTS,
|
76 |
+
textinfo="label",
|
77 |
+
)
|
78 |
+
)
|
79 |
+
# ig.update_traces(root_color="lightblue")
|
80 |
+
fig.update_layout(margin=dict(t=50, l=25, r=25, b=25))
|
81 |
+
fig.update_layout(height=600, width=1400, template="plotly")
|
82 |
+
|
83 |
+
model_name = "de_core_news_sm"
|
84 |
+
if not spacy.util.is_package(model_name):
|
85 |
+
# Download the model if not present
|
86 |
+
os.system(f"python -m spacy download {model_name}")
|
87 |
+
|
88 |
+
path = snapshot_download(
|
89 |
+
cache_dir="tmp/",
|
90 |
+
repo_id="and-effect/family-compatibility-extractor-copy",
|
91 |
+
revision="main",
|
92 |
+
token=os.getenv("HF_TOKEN"),
|
93 |
+
)
|
94 |
+
|
95 |
+
sys.path.append(path)
|
96 |
+
from pipeline import PipelineWrapper # noqa: E402
|
97 |
+
|
98 |
+
|
99 |
+
@st.cache_resource
|
100 |
+
def load_pipeline(repo_path: str) -> PipelineWrapper:
|
101 |
+
"""Load the pipeline"""
|
102 |
+
return PipelineWrapper(path=repo_path)
|
103 |
+
|
104 |
+
|
105 |
+
@st.cache_data
|
106 |
+
def load_app_init() -> None:
|
107 |
+
"""Load the app initialisation"""
|
108 |
+
st.title("Family Compatibility Extractor")
|
109 |
+
st.markdown(
|
110 |
+
"""
|
111 |
+
<style>
|
112 |
+
.font {
|
113 |
+
font-size:20px !important;
|
114 |
+
}
|
115 |
+
</style>
|
116 |
+
""",
|
117 |
+
unsafe_allow_html=True,
|
118 |
+
)
|
119 |
+
|
120 |
+
st.markdown(
|
121 |
+
"""
|
122 |
+
<style>
|
123 |
+
.prediction {
|
124 |
+
font-size:10px !important;
|
125 |
+
}
|
126 |
+
</style>
|
127 |
+
""",
|
128 |
+
unsafe_allow_html=True,
|
129 |
+
)
|
130 |
+
st.markdown(
|
131 |
+
""" <p class="font">Der Family Compatibility Extractor ist ein
|
132 |
+
Sprachmodell, das aus den Texten von Jobanzeigen Anforderungen und
|
133 |
+
Angebote an bzw. für Bewerbende extrahiert, die im Zusammenhang mit
|
134 |
+
Familienkompatibilität stehen.
|
135 |
+
Die Grafik unten zeigt die Taxonomie der extrahierten Konzepte.""",
|
136 |
+
unsafe_allow_html=True,
|
137 |
+
)
|
138 |
+
|
139 |
+
# taxonomy table einfügen
|
140 |
+
st.plotly_chart(fig)
|
141 |
+
|
142 |
+
st.header("Untersuche das Family Compatibility Modell")
|
143 |
+
st.markdown(
|
144 |
+
""" <p class="font">Lade den Text einer Jobanzeige hoch oder gebe ihn
|
145 |
+
in das Eingabefeld ein und drücke den jeweiligen Extrahieren-
|
146 |
+
Button, um die vorhergesagten Familienkompatibilitätskonzepte und die
|
147 |
+
dazugehörigen Erklärungen zu sehen.
|
148 |
+
Klicke auf den Beispieltext rechts um das Eingabefeld damit zu füllen
|
149 |
+
und das Modell zu testen.</p>""",
|
150 |
+
unsafe_allow_html=True,
|
151 |
+
)
|
152 |
+
|
153 |
+
|
154 |
+
st.set_page_config(layout="wide")
|
155 |
+
load_app_init()
|
156 |
+
pipeline = load_pipeline(repo_path=path)
|
157 |
+
# we need to keep button status in session state
|
158 |
+
if "clicked" not in st.session_state:
|
159 |
+
st.session_state.clicked = {1: False, 2: False, 3: False}
|
160 |
+
|
161 |
+
|
162 |
+
def clicked(button: int) -> None:
|
163 |
+
"""updates session state variable when an example
|
164 |
+
job title button is clicked
|
165 |
+
Parameters
|
166 |
+
----------
|
167 |
+
button : int
|
168 |
+
The number of the button that was clicked
|
169 |
+
"""
|
170 |
+
st.session_state.clicked[button] = True
|
171 |
+
st.session_state.clicked[(button + 1) % 3] = False
|
172 |
+
st.session_state.clicked[(button + 2) % 3] = False
|
173 |
+
|
174 |
+
|
175 |
+
def reset_buttons() -> None:
|
176 |
+
"""resets the session state variable for the example
|
177 |
+
job title buttons when the user types in a job title
|
178 |
+
"""
|
179 |
+
st.session_state.clicked = {1: False, 2: False, 3: False}
|
180 |
+
|
181 |
+
|
182 |
+
st.markdown(
|
183 |
+
"""
|
184 |
+
<style>
|
185 |
+
/* Style columns */
|
186 |
+
[data-testid="column"] {
|
187 |
+
border-radius: 15px;
|
188 |
+
background-color: white;
|
189 |
+
box-shadow: 0 0 10px #eee;
|
190 |
+
border: 1px solid #ddd;
|
191 |
+
padding: 1rem;;
|
192 |
+
}
|
193 |
+
/* Style containers */
|
194 |
+
[data-testid="stVerticalBlock"] >
|
195 |
+
[style*="flex-direction: column;"] > [data-testid="stVerticalBlock"] {
|
196 |
+
border-radius: 15px;
|
197 |
+
background-color: white;
|
198 |
+
box-shadow: 0 0 10px #eee;
|
199 |
+
border: 1px solid #ddd;
|
200 |
+
padding: 1rem;;
|
201 |
+
}
|
202 |
+
</style>
|
203 |
+
""",
|
204 |
+
unsafe_allow_html=True,
|
205 |
+
)
|
206 |
+
|
207 |
+
|
208 |
+
st.markdown(
|
209 |
+
"""
|
210 |
+
<style>
|
211 |
+
.example {
|
212 |
+
font-size:24px !important;
|
213 |
+
}
|
214 |
+
</style>
|
215 |
+
""",
|
216 |
+
unsafe_allow_html=True,
|
217 |
+
)
|
218 |
+
|
219 |
+
left_column, middle_column, right_column = st.columns(3)
|
220 |
+
with right_column:
|
221 |
+
st.markdown(
|
222 |
+
'<p class="example">Beispiel</p>',
|
223 |
+
unsafe_allow_html=True,
|
224 |
+
)
|
225 |
+
st.markdown(
|
226 |
+
""" <p class="font">Klicke auf die Beispielausschreibung, um die
|
227 |
+
extrahierten Konzepte anzuzeigen.</p>""",
|
228 |
+
unsafe_allow_html=True,
|
229 |
+
)
|
230 |
+
st.button(
|
231 |
+
"""\n## Stellendetails zu: Mitarbeiter in der Produktion (m/w/d)\n\n### Mitarbeiter
|
232 |
+
in der Produktion (m/w/d)\n\nHelfer/in - Elektro \nVer\u00f6ffentlicht:
|
233 |
+
XX.XX.2023\n\n#### Mitarbeiter in der Produktion (m/w/d)\n\nXXXX
|
234 |
+
GmbH\n\n#### Typ:\n\nArbeit\n\n#### Arbeitszeit:\n\nVollzeit\n\n####
|
235 |
+
Eintrittsdatum:\n\nab sofort\n\n#### Arbeitsort:\n\XXXX\n\n###
|
236 |
+
Stellenbeschreibung\n\nOrt: XXX Arbeitszeitmodell: Vollzeit
|
237 |
+
Vertragsart: Arbeitnehmer\u00fcberlassung mit \u00dcbernahmeoption
|
238 |
+
Branche: Elektro Startzeitpunkt: ab sofort Die XXXX GmbH ist Ihr
|
239 |
+
Dienstleister im Gro\u00dfraum XXXX f\u00fcr eine faire, professionelle
|
240 |
+
Umsetzung Ihrer neuen beruflichen Herausforderungen. Gestalten auch Sie
|
241 |
+
Ihre berufliche Zukunft mit uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt
|
242 |
+
suchen wir die ideale Besetzung f\u00fcr die Position: Mitarbeiter in der
|
243 |
+
Produktion (m/w/d) Langfristige Besch\u00e4ftigungsoption Ihre Vorteile:
|
244 |
+
*All-in-One: Umfassende Beratung und unkomplizierter Bewerbungsprozess mit
|
245 |
+
XXXX * Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B.
|
246 |
+
Weihnachtsgeld) *Sicherheit: Vermittlung in einen zukunftssicheren
|
247 |
+
Arbeitsplatz* Work-Life-Balance: Geregelte Arbeitszeiten *Onboarding:
|
248 |
+
Umfangreiche und gr\u00fcndliche Einarbeitung* Abwechslung: Vielseitige
|
249 |
+
und spannende Aufgaben *Arbeitsumgebung: Flache Hierarchien, modernes
|
250 |
+
Arbeitsumfeld und ein aufgeschlossenes Team* Was wir von BS \nimmer bieten
|
251 |
+
k\u00f6nnen: Pers\u00f6nlicher Ansprechpartner, gro\u00dfes
|
252 |
+
Unternehmensnetzwerk, kostenlose Arbeitskleidung sowie eine zeitnahe
|
253 |
+
R\u00fcckmeldung zum Bewerbungsstatus Ihre Aufgaben: *Montage von
|
254 |
+
Elektronik-Komponenten* Konfektionierung einzelner Komponenten
|
255 |
+
*Verpackungst\u00e4tigkeiten Ihr Profil:* Berufserfahrung: Idealerweise
|
256 |
+
erste Berufserfahrung in einer vergleichbaren Position *Hard Skills:
|
257 |
+
Fingerfertigkeit und technisches Grundverst\u00e4ndnis* Soft Skills:
|
258 |
+
Teambewusstsein und eine gute Kommunikationsf\u00e4higkeit * Arbeitsweise:
|
259 |
+
Sorgf\u00e4ltig und strukturiert\n\n### Anforderungen an den Bewerber\n\n
|
260 |
+
#### Berufserfahrung:\n\nMit Berufserfahrung\n\n#### F\u00e4higkeiten:\n\n*
|
261 |
+
##### Transport, Verkehr \nGrundkenntnisse \nLagerarbeit, Transport\n*
|
262 |
+
##### Produktion, Verarbeitung, Technik \nGrundkenntnisse
|
263 |
+
\nBest\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung,
|
264 |
+
-bedienung, Montage (Elektrotechnik)\n\n#### Pers\u00f6nliche
|
265 |
+
St\u00e4rken:\n\n* Selbst\u00e4ndiges Arbeiten\n* Sorgfalt/Genauigkeit\n*
|
266 |
+
Motivation/ Leistungsbereitschaft\n* Zuverl\u00e4ssigkeit\n*
|
267 |
+
Lernbereitschaft\n\n#### Sprachen:\n\n* Grundkenntnisse \nDeutsch\n\n
|
268 |
+
#### Fahrzeug erforderlich:\n\nNein\n\n#### Reise-/Montagebereitschaft:
|
269 |
+
\n\nNicht erforderlich\n\n### Arbeitsorte\n\n* XXXX \n\n###
|
270 |
+
Arbeitgeber\n\nXXX GmbH\n\n#### Firmenadresse:\n\n
|
271 |
+
XXXX\n\n#### Branchengruppe:\n\n
|
272 |
+
Arbeitnehmer\u00fcberlassung, Zeitarbeit\n\n#### Branche:\n\nBefristete
|
273 |
+
\u00dcberlassung von Arbeitskr\u00e4ften\n\n### Weitere Informationen
|
274 |
+
\n\nDas Stellenangebot wird durch den Arbeitgeber selbst verwaltet.\n\n
|
275 |
+
Stelle im Rahmen der Arbeitnehmer\u00fcberlassung.\n\n#### Tarifvertrag:
|
276 |
+
\n\nIGZ\n\n#### Befristung:\n\nUnbefristet\n\n#### Anzahl freier Stellen:
|
277 |
+
\n\n1\n\n#### Arbeitszeitmodell:\n\n* Vollzeit\n\n#### Quelle des
|
278 |
+
Stellenangebots:\n\narbeitsagentur.de\n\n#### Referenznummer:\n
|
279 |
+
\nXXXX\n""",
|
280 |
+
on_click=clicked,
|
281 |
+
args=[1],
|
282 |
+
)
|
283 |
+
# st.button(
|
284 |
+
# "Nur Vollzeit",
|
285 |
+
# on_click=clicked,
|
286 |
+
# args=[2],
|
287 |
+
# )
|
288 |
+
# st.button("Famillienfreundlich", on_click=clicked, args=[3])
|
289 |
+
|
290 |
+
with left_column:
|
291 |
+
st.markdown(
|
292 |
+
'<p class="example">Lade eine Datei mit einem Anzeigentext hoch.</p>',
|
293 |
+
unsafe_allow_html=True,
|
294 |
+
)
|
295 |
+
st.markdown(
|
296 |
+
""" <p class="font">(.txt, .json mit key "full_text")</p>""",
|
297 |
+
unsafe_allow_html=True,
|
298 |
+
)
|
299 |
+
uploaded_file = st.file_uploader("Datei hochladen", type=["txt", "json"])
|
300 |
+
if uploaded_file is not None:
|
301 |
+
if uploaded_file.type == "text/plain":
|
302 |
+
stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))
|
303 |
+
uploaded_jobdescription = stringio.read()
|
304 |
+
elif uploaded_file.type == "application/json":
|
305 |
+
file_contents = json.load(uploaded_file)
|
306 |
+
uploaded_jobdescription = file_contents["full_text"]
|
307 |
+
else:
|
308 |
+
st.write("Bitte lade eine .txt oder .json Datei hoch.")
|
309 |
+
|
310 |
+
if st.button("Extrahieren", key="extract_file_based"):
|
311 |
+
if uploaded_jobdescription:
|
312 |
+
query = [{"posting_id": "aaaa", "text": uploaded_jobdescription}]
|
313 |
+
output, docs = pipeline(query)
|
314 |
+
concept = [output[i]["concept"] for i in range(len(output))]
|
315 |
+
if output[0]["concept"] is not None:
|
316 |
+
st.markdown(
|
317 |
+
'<p class="example">Gefundene Konzepte:</p>',
|
318 |
+
unsafe_allow_html=True,
|
319 |
+
)
|
320 |
+
for c in output:
|
321 |
+
if c["concept"] in ANFORDERUNGEN:
|
322 |
+
st.write(f" - Anforderung: {c['concept']}")
|
323 |
+
elif c["concept"] in ANGEBOTE:
|
324 |
+
st.write(f" - Angebot: {c['concept']}")
|
325 |
+
else:
|
326 |
+
st.write(f" - Konzept nicht in der Taxonomie {c['concept']}")
|
327 |
+
|
328 |
+
# add explanations
|
329 |
+
options = {key: "#ef553b" for key in ANFORDERUNGEN} | {
|
330 |
+
key: "#636efa" for key in ANGEBOTE
|
331 |
+
}
|
332 |
+
st.markdown(
|
333 |
+
'<p class="example">Erklärungen:</p>',
|
334 |
+
unsafe_allow_html=True,
|
335 |
+
)
|
336 |
+
visualize_spans(
|
337 |
+
docs[0],
|
338 |
+
spans_key="ruler",
|
339 |
+
title="",
|
340 |
+
show_table=False,
|
341 |
+
displacy_options={"colors": options},
|
342 |
+
)
|
343 |
+
else:
|
344 |
+
st.write("Es wurde kein Konzept für diese Jobanzeige extrahiert.")
|
345 |
+
|
346 |
+
else:
|
347 |
+
st.write("Bitte lade eine Datei hoch.")
|
348 |
+
|
349 |
+
|
350 |
+
with middle_column:
|
351 |
+
tabs_font_css = """
|
352 |
+
<style>
|
353 |
+
div[class*="stTextInput"] label p {
|
354 |
+
font-size: 2px;
|
355 |
+
}
|
356 |
+
</style>
|
357 |
+
"""
|
358 |
+
st.markdown(
|
359 |
+
'<p class="example">Gebe den Text einer Jobanzeige ein.</p>',
|
360 |
+
unsafe_allow_html=True,
|
361 |
+
)
|
362 |
+
|
363 |
+
# get to know if the example job title buttons were clicked
|
364 |
+
selected_job_text = ""
|
365 |
+
if st.session_state.clicked[1]:
|
366 |
+
selected_job_text = """\n## Stellendetails zu: Mitarbeiter in der Produktion (m/w/d)\n\n### Mitarbeiter
|
367 |
+
in der Produktion (m/w/d)\n\nHelfer/in - Elektro \nVer\u00f6ffentlicht:
|
368 |
+
XX.XX.2023\n\n#### Mitarbeiter in der Produktion (m/w/d)\n\n XXXX
|
369 |
+
GmbH\n\n#### Typ:\n\nArbeit\n\n#### Arbeitszeit:\n\nVollzeit\n\n####
|
370 |
+
Eintrittsdatum:\n\nab sofort\n\n#### Arbeitsort:\n\XXXX\n\n###
|
371 |
+
Stellenbeschreibung\n\nOrt: XXXX Arbeitszeitmodell: Vollzeit
|
372 |
+
Vertragsart: Arbeitnehmer\u00fcberlassung mit \u00dcbernahmeoption
|
373 |
+
Branche: Elektro Startzeitpunkt: ab sofort Die XXXX GmbH ist Ihr
|
374 |
+
Dienstleister im Gro\u00dfraum XXXX f\u00fcr eine faire, professionelle
|
375 |
+
Umsetzung Ihrer neuen beruflichen Herausforderungen. Gestalten auch Sie
|
376 |
+
Ihre berufliche Zukunft mit uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt
|
377 |
+
suchen wir die ideale Besetzung f\u00fcr die Position: Mitarbeiter in der
|
378 |
+
Produktion (m/w/d) Langfristige Besch\u00e4ftigungsoption Ihre Vorteile:
|
379 |
+
*All-in-One: Umfassende Beratung und unkomplizierter Bewerbungsprozess mit
|
380 |
+
XXXX * Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B.
|
381 |
+
Weihnachtsgeld) *Sicherheit: Vermittlung in einen zukunftssicheren
|
382 |
+
Arbeitsplatz* Work-Life-Balance: Geregelte Arbeitszeiten *Onboarding:
|
383 |
+
Umfangreiche und gr\u00fcndliche Einarbeitung* Abwechslung: Vielseitige
|
384 |
+
und spannende Aufgaben *Arbeitsumgebung: Flache Hierarchien, modernes
|
385 |
+
Arbeitsumfeld und ein aufgeschlossenes Team* Was wir von BS \nimmer bieten
|
386 |
+
k\u00f6nnen: Pers\u00f6nlicher Ansprechpartner, gro\u00dfes
|
387 |
+
Unternehmensnetzwerk, kostenlose Arbeitskleidung sowie eine zeitnahe
|
388 |
+
R\u00fcckmeldung zum Bewerbungsstatus Ihre Aufgaben: *Montage von
|
389 |
+
Elektronik-Komponenten* Konfektionierung einzelner Komponenten
|
390 |
+
*Verpackungst\u00e4tigkeiten Ihr Profil:* Berufserfahrung: Idealerweise
|
391 |
+
erste Berufserfahrung in einer vergleichbaren Position *Hard Skills:
|
392 |
+
Fingerfertigkeit und technisches Grundverst\u00e4ndnis* Soft Skills:
|
393 |
+
Teambewusstsein und eine gute Kommunikationsf\u00e4higkeit * Arbeitsweise:
|
394 |
+
Sorgf\u00e4ltig und strukturiert\n\n### Anforderungen an den Bewerber\n\n
|
395 |
+
#### Berufserfahrung:\n\nMit Berufserfahrung\n\n#### F\u00e4higkeiten:\n\n*
|
396 |
+
##### Transport, Verkehr \nGrundkenntnisse \nLagerarbeit, Transport\n*
|
397 |
+
##### Produktion, Verarbeitung, Technik \nGrundkenntnisse
|
398 |
+
\nBest\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung,
|
399 |
+
-bedienung, Montage (Elektrotechnik)\n\n#### Pers\u00f6nliche
|
400 |
+
St\u00e4rken:\n\n* Selbst\u00e4ndiges Arbeiten\n* Sorgfalt/Genauigkeit\n*
|
401 |
+
Motivation/ Leistungsbereitschaft\n* Zuverl\u00e4ssigkeit\n*
|
402 |
+
Lernbereitschaft\n\n#### Sprachen:\n\n* Grundkenntnisse \nDeutsch\n\n
|
403 |
+
#### Fahrzeug erforderlich:\n\nNein\n\n#### Reise-/Montagebereitschaft:
|
404 |
+
\n\nNicht erforderlich\n\n### Arbeitsorte\n\n* XXXX \n\n###
|
405 |
+
Arbeitgeber\n\nXXX GmbH\n\n#### Firmenadresse:\n\n
|
406 |
+
XXXX\n\n#### Branchengruppe:\n\n
|
407 |
+
Arbeitnehmer\u00fcberlassung, Zeitarbeit\n\n#### Branche:\n\nBefristete
|
408 |
+
\u00dcberlassung von Arbeitskr\u00e4ften\n\n### Weitere Informationen
|
409 |
+
\n\nDas Stellenangebot wird durch den Arbeitgeber selbst verwaltet.\n\n
|
410 |
+
Stelle im Rahmen der Arbeitnehmer\u00fcberlassung.\n\n#### Tarifvertrag:
|
411 |
+
\n\nIGZ\n\n#### Befristung:\n\nUnbefristet\n\n#### Anzahl freier Stellen:
|
412 |
+
\n\n1\n\n#### Arbeitszeitmodell:\n\n* Vollzeit\n\n#### Quelle des
|
413 |
+
Stellenangebots:\n\narbeitsagentur.de\n\n#### Referenznummer:\n
|
414 |
+
\nXXXX\n"""
|
415 |
+
|
416 |
+
# create a text input for the user to type in a job title
|
417 |
+
st.text_area(
|
418 |
+
"---",
|
419 |
+
value=selected_job_text,
|
420 |
+
key="typed_job_text",
|
421 |
+
height=500,
|
422 |
+
on_change=reset_buttons, # noqa: E501
|
423 |
+
)
|
424 |
+
|
425 |
+
if selected_job_text:
|
426 |
+
query = [{"posting_id": "aaaa", "text": selected_job_text}]
|
427 |
+
else:
|
428 |
+
query = [
|
429 |
+
{"posting_id": "aaaa", "text": st.session_state.typed_job_text}
|
430 |
+
] # noqa: E501
|
431 |
+
# predicts the occupation of the job title when predict button is clicked
|
432 |
+
if st.button("Extrahieren", key="extract_text_based"):
|
433 |
+
output, docs = pipeline(query)
|
434 |
+
concept = [output[i]["concept"] for i in range(len(output))]
|
435 |
+
if output[0]["concept"] is not None:
|
436 |
+
st.markdown(
|
437 |
+
'<p class="example">Gefundene Konzepte:</p>',
|
438 |
+
unsafe_allow_html=True,
|
439 |
+
)
|
440 |
+
for c in output:
|
441 |
+
if c["concept"] in ANFORDERUNGEN:
|
442 |
+
st.write(f" - Anforderung: {c['concept']}")
|
443 |
+
elif c["concept"] in ANGEBOTE:
|
444 |
+
st.write(f" - Angebot: {c['concept']}")
|
445 |
+
else:
|
446 |
+
st.write(f" - Konzept nicht in der Taxonomie {c['concept']}")
|
447 |
+
|
448 |
+
# add explanations
|
449 |
+
options = {key: "#ef553b" for key in ANFORDERUNGEN} | {
|
450 |
+
key: "#636efa" for key in ANGEBOTE
|
451 |
+
}
|
452 |
+
st.markdown(
|
453 |
+
'<p class="example">Erklärungen:</p>',
|
454 |
+
unsafe_allow_html=True,
|
455 |
+
)
|
456 |
+
visualize_spans(
|
457 |
+
docs[0],
|
458 |
+
spans_key="ruler",
|
459 |
+
title="",
|
460 |
+
show_table=False,
|
461 |
+
displacy_options={"colors": options},
|
462 |
+
)
|
463 |
+
else:
|
464 |
+
st.write("Es wurde kein Konzept für diese Jobanzeige extrahiert.")
|
465 |
+
st.markdown("#")
|
data/test.json
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"date": "2023-XX-XX",
|
3 |
+
"sequence_number": 0000,
|
4 |
+
"expired": false,
|
5 |
+
"source_url": "XXX",
|
6 |
+
"source_website": "arbeitsagentur.de",
|
7 |
+
"source_type": { "value": 1, "label": "Jobsite" },
|
8 |
+
"posting_id": "123d949f463b425aa7e7da992de33a91",
|
9 |
+
"via_intermediary": false,
|
10 |
+
"language": "de",
|
11 |
+
"job_title": "Mitarbeiter in der Produktion (m/w/d)",
|
12 |
+
"profession": { "value": 1584, "label": "Produktionsmitarbeiter (m/w/d)" },
|
13 |
+
"profession_group": { "value": 182, "label": "Produktionsmitarbeiter (m/w)" },
|
14 |
+
"profession_class": { "value": 18, "label": "Produktion" },
|
15 |
+
"profession_isco_code": {
|
16 |
+
"value": "9329",
|
17 |
+
"label": "Hilfsarbeiter bei der Herstellung von Waren, anderweitig nicht genannt"
|
18 |
+
},
|
19 |
+
"location": "XXXX",
|
20 |
+
"location_name": "XXXX",
|
21 |
+
"location_coordinates": "XXXX",
|
22 |
+
"region": { "value": "BW", "label": "Baden-W\u00fcrttemberg" },
|
23 |
+
"education_level": { "value": 0, "label": "Unbekannt" },
|
24 |
+
"advertiser_name": "XXXX Gmbh",
|
25 |
+
"advertiser_type": { "value": 1, "label": "Direkte Arbeitgeber" },
|
26 |
+
"advertiser_street": "Franz-John-Str.",
|
27 |
+
"advertiser_house_number": "10",
|
28 |
+
"advertiser_postal_code": "XXXX",
|
29 |
+
"advertiser_location": "XXX",
|
30 |
+
"advertiser_reference_number": "XXXX",
|
31 |
+
"available_contact_fields": "advertiser_name",
|
32 |
+
"organization_name": "XXX GmbH",
|
33 |
+
"organization_industry": { "value": "0", "label": "Andere / Unbekannt" },
|
34 |
+
"organization_size": { "value": 0, "label": "Unbekannt" },
|
35 |
+
"contract_type": {
|
36 |
+
"value": 1,
|
37 |
+
"label": "Unbefristetes Dienstverh\u00e4ltnis"
|
38 |
+
},
|
39 |
+
"working_hours_type": { "value": 1, "label": "Regul\u00e4re Arbeitszeiten" },
|
40 |
+
"employment_type": { "value": 1, "label": "Vollzeit" },
|
41 |
+
"full_text": "\n## Stellendetails zu: Mitarbeiter in der Produktion (m/w/d)\n\n### Mitarbeiter in der Produktion (m/w/d)\n\nHelfer/in - Elektro \nVer\u00f6ffentlicht: XX.XX.2023\n\n#### Mitarbeiter in der Produktion (m/w/d)\n\n XXX GmbH\n\n#### Typ:\n\nArbeit\n\n#### Arbeitszeit:\n\nVollzeit\n\n#### Eintrittsdatum:\n\nab sofort\n\n#### Arbeitsort:\n\nXXXX\n\n### Stellenbeschreibung\n\nOrt: XXXX Arbeitszeitmodell: Vollzeit Vertragsart: Arbeitnehmer\u00fcberlassung mit \u00dcbernahmeoption Branche: Elektro Startzeitpunkt: ab sofort Die XXXX GmbH ist Ihr Dienstleister im Gro\u00dfraum XXXX f\u00fcr eine faire, professionelle Umsetzung Ihrer neuen beruflichen Herausforderungen. Gestalten auch Sie Ihre berufliche Zukunft mit uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt suchen wir die ideale Besetzung f\u00fcr die Position: Mitarbeiter in der Produktion (m/w/d) Langfristige Besch\u00e4ftigungsoption Ihre Vorteile: *All-in-One: Umfassende Beratung und unkomplizierter Bewerbungsprozess mit XXXX* Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B. Weihnachtsgeld) *Sicherheit: Vermittlung in einen zukunftssicheren Arbeitsplatz* Work-Life-Balance: Geregelte Arbeitszeiten *Onboarding: Umfangreiche und gr\u00fcndliche Einarbeitung* Abwechslung: Vielseitige und spannende Aufgaben *Arbeitsumgebung: Flache Hierarchien, modernes Arbeitsumfeld und ein aufgeschlossenes Team* Was wir von XXX \nimmer bieten k\u00f6nnen: Pers\u00f6nlicher Ansprechpartner, gro\u00dfes Unternehmensnetzwerk, kostenlose Arbeitskleidung sowie eine zeitnahe R\u00fcckmeldung zum Bewerbungsstatus Ihre Aufgaben: *Montage von Elektronik-Komponenten* Konfektionierung einzelner Komponenten *Verpackungst\u00e4tigkeiten Ihr Profil:* Berufserfahrung: Idealerweise erste Berufserfahrung in einer vergleichbaren Position *Hard Skills: Fingerfertigkeit und technisches Grundverst\u00e4ndnis* Soft Skills: Teambewusstsein und eine gute Kommunikationsf\u00e4higkeit * Arbeitsweise: Sorgf\u00e4ltig und strukturiert\n\n### Anforderungen an den Bewerber\n\n#### Berufserfahrung:\n\nMit Berufserfahrung\n\n#### F\u00e4higkeiten:\n\n* ##### Transport, Verkehr \nGrundkenntnisse \nLagerarbeit, Transport\n* ##### Produktion, Verarbeitung, Technik \nGrundkenntnisse \nBest\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung, -bedienung, Montage (Elektrotechnik)\n\n#### Pers\u00f6nliche St\u00e4rken:\n\n* Selbst\u00e4ndiges Arbeiten\n* Sorgfalt/Genauigkeit\n* Motivation/ Leistungsbereitschaft\n* Zuverl\u00e4ssigkeit\n* Lernbereitschaft\n\n#### Sprachen:\n\n* Grundkenntnisse \nDeutsch\n\n#### Fahrzeug erforderlich:\n\nNein\n\n#### Reise-/Montagebereitschaft:\n\nNicht erforderlich\n\n### Arbeitsorte\n\n* XXXX\n\n### Arbeitgeber\n\nXXXX GmbH\n\n#### Firmenadresse:\n\n XXXX, XXX \n\n#### Branchengruppe:\n\nArbeitnehmer\u00fcberlassung, Zeitarbeit\n\n#### Branche:\n\nBefristete \u00dcberlassung von Arbeitskr\u00e4ften\n\n### Weitere Informationen\n\nDas Stellenangebot wird durch den Arbeitgeber selbst verwaltet.\n\nStelle im Rahmen der Arbeitnehmer\u00fcberlassung.\n\n#### Tarifvertrag:\n\nIGZ\n\n#### Befristung:\n\nUnbefristet\n\n#### Anzahl freier Stellen:\n\n1\n\n#### Arbeitszeitmodell:\n\n* Vollzeit\n\n#### Quelle des Stellenangebots:\n\narbeitsagentur.de\n\n#### Referenznummer:\n\nXXXX\n",
|
42 |
+
"candidate_description": "* Transport, Verkehr\n Grundkenntnisse\n Lagerarbeit, Transport\n * Produktion, Verarbeitung, Technik\n Grundkenntnisse\n Best\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung, -bedienung, Montage (Elektrotechnik)\n\nPers\u00f6nliche St\u00e4rken:\n\n * Selbst\u00e4ndiges Arbeiten\n * Sorgfalt/Genauigkeit\n * Motivation/ Leistungsbereitschaft\n * Zuverl\u00e4ssigkeit\n * Lernbereitschaft\n\nSprachen:\n\n * Grundkenntnisse\n Deutsch",
|
43 |
+
"conditions_description": "Ort: XXXX Arbeitszeitmodell: Vollzeit Vertragsart: Arbeitnehmer\u00fcberlassung mit \u00dcbernahmeoption Branche: Elektro Startzeitpunkt: ab sofort Die XXXX GmbH ist Ihr Dienstleister im Gro\u00dfraum XXX f\u00fcr eine faire, professionelle Umsetzung Ihrer neuen beruflichen Herausforderungen. Gestalten auch Sie Ihre berufliche Zukunft mit uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt suchen wir die ideale Besetzung f\u00fcr die Position: Mitarbeiter in der Produktion (m/w/d) Langfristige Besch\u00e4ftigungsoption Ihre Vorteile: * All-in-One: Umfassende Beratung und unkomplizierter Bewerbungsprozess mit XXXX * Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B. Weihnachtsgeld) * Sicherheit: Vermittlung in einen zukunftssicheren Arbeitsplatz * Work-Life-Balance: Geregelte Arbeitszeiten * Onboarding: Umfangreiche und gr\u00fcndliche Einarbeitung * Abwechslung: Vielseitige und spannende Aufgaben * Arbeitsumgebung: Flache Hierarchien, modernes Arbeitsumfeld und ein aufgeschlossenes Team * Was wir von XXX ",
|
44 |
+
"soft_skills": [
|
45 |
+
{ "value": "KS7G6NP6R6L1H1SKFTSY", "label": "Zuverl\u00e4ssigkeit" },
|
46 |
+
{ "value": "KSL5ONJ9QGJZ4G96PTIB", "label": "Flei\u00dfig und Engagiert" },
|
47 |
+
{ "value": "KSLSQ90KU2MTW9EUR1B5", "label": "Eigenmotivation" },
|
48 |
+
{ "value": "KSZI0PLLDDAWEFE20HK8", "label": "Neugier" }
|
49 |
+
],
|
50 |
+
"professional_skills": [
|
51 |
+
{ "value": "KS120LH6DHTBJYVLFKB3", "label": "Elektrotechnik" },
|
52 |
+
{ "value": "KS1261X6D4NXVPR41HR0", "label": "Maschinensteuerungen" },
|
53 |
+
{ "value": "KS440ZB6SL0GGNRMHH11", "label": "Lagerverwaltung" }
|
54 |
+
],
|
55 |
+
"language_skills": [{ "value": "KS124BK6VD8Y1F11PD2Q", "label": "Deutsch" }],
|
56 |
+
"job_id": "123d949f463b425aa7e7da992de33a91"
|
57 |
+
}
|
data/test.txt
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
\n## Stellendetails zu: Mitarbeiter in der Produktion (m/w/d)\n\n### Mitarbeiter
|
2 |
+
in der Produktion (m/w/d)\n\nHelfer/in - Elektro \nVer\u00f6ffentlicht:
|
3 |
+
XX.XX.2023\n\n#### Mitarbeiter in der Produktion (m/w/d)\n\nBS XXXX
|
4 |
+
GmbH\n\n#### Typ:\n\nArbeit\n\n#### Arbeitszeit:\n\nVollzeit\n\n####
|
5 |
+
Eintrittsdatum:\n\nab sofort\n\n#### Arbeitsort:\n\nArbeitsort\n\n###
|
6 |
+
Stellenbeschreibung\n\nOrt: Firma Arbeitszeitmodell: Vollzeit
|
7 |
+
Vertragsart: Arbeitnehmer\u00fcberlassung mit \u00dcbernahmeoption
|
8 |
+
Branche: Elektro Startzeitpunkt: ab sofort Die XXXX GmbH ist Ihr
|
9 |
+
Dienstleister im Gro\u00dfraum Achern f\u00fcr eine faire, professionelle
|
10 |
+
Umsetzung Ihrer neuen beruflichen Herausforderungen. Gestalten auch Sie
|
11 |
+
Ihre berufliche Zukunft mit uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt
|
12 |
+
suchen wir die ideale Besetzung f\u00fcr die Position: Mitarbeiter in der
|
13 |
+
Produktion (m/w/d) Langfristige Besch\u00e4ftigungsoption Ihre Vorteile:
|
14 |
+
*All-in-One: Umfassende Beratung und unkomplizierter Bewerbungsprozess* Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B.
|
15 |
+
Weihnachtsgeld) *Sicherheit: Vermittlung in einen zukunftssicheren
|
16 |
+
Arbeitsplatz* Work-Life-Balance: Geregelte Arbeitszeiten *Onboarding:
|
17 |
+
Umfangreiche und gr\u00fcndliche Einarbeitung* Abwechslung: Vielseitige
|
18 |
+
und spannende Aufgaben *Arbeitsumgebung: Flache Hierarchien, modernes
|
19 |
+
Arbeitsumfeld und ein aufgeschlossenes Team* Was wir \nimmer bieten
|
20 |
+
k\u00f6nnen: Pers\u00f6nlicher Ansprechpartner, gro\u00dfes
|
21 |
+
Unternehmensnetzwerk, kostenlose Arbeitskleidung sowie eine zeitnahe
|
22 |
+
R\u00fcckmeldung zum Bewerbungsstatus Ihre Aufgaben: *Montage von
|
23 |
+
Elektronik-Komponenten* Konfektionierung einzelner Komponenten
|
24 |
+
*Verpackungst\u00e4tigkeiten Ihr Profil:* Berufserfahrung: Idealerweise
|
25 |
+
erste Berufserfahrung in einer vergleichbaren Position *Hard Skills:
|
26 |
+
Fingerfertigkeit und technisches Grundverst\u00e4ndnis* Soft Skills:
|
27 |
+
Teambewusstsein und eine gute Kommunikationsf\u00e4higkeit * Arbeitsweise:
|
28 |
+
Sorgf\u00e4ltig und strukturiert\n\n### Anforderungen an den Bewerber\n\n
|
29 |
+
#### Berufserfahrung:\n\nMit Berufserfahrung\n\n#### F\u00e4higkeiten:\n\n*
|
30 |
+
##### Transport, Verkehr \nGrundkenntnisse \nLagerarbeit, Transport\n*
|
31 |
+
##### Produktion, Verarbeitung, Technik \nGrundkenntnisse
|
32 |
+
\nBest\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung,
|
33 |
+
-bedienung, Montage (Elektrotechnik)\n\n#### Pers\u00f6nliche
|
34 |
+
St\u00e4rken:\n\n* Selbst\u00e4ndiges Arbeiten\n* Sorgfalt/Genauigkeit\n*
|
35 |
+
Motivation/ Leistungsbereitschaft\n* Zuverl\u00e4ssigkeit\n*
|
36 |
+
Lernbereitschaft\n\n#### Sprachen:\n\n* Grundkenntnisse \nDeutsch\n\n
|
37 |
+
#### Fahrzeug erforderlich:\n\nNein\n\n#### Reise-/Montagebereitschaft:
|
38 |
+
\n\nNicht erforderlich\n\n### Arbeitsorte\n\n* \n\n###
|
39 |
+
Branchengruppe:\n\n
|
40 |
+
Arbeitnehmer\u00fcberlassung, Zeitarbeit\n\n#### Branche:\n\nBefristete
|
41 |
+
\u00dcberlassung von Arbeitskr\u00e4ften\n\n### Weitere Informationen
|
42 |
+
\n\nDas Stellenangebot wird durch den Arbeitgeber selbst verwaltet.\n\n
|
43 |
+
Stelle im Rahmen der Arbeitnehmer\u00fcberlassung.\n\n#### Tarifvertrag:
|
44 |
+
\n\nIGZ\n\n#### Befristung:\n\nUnbefristet\n\n#### Anzahl freier Stellen:
|
45 |
+
\n\n1\n\n#### Arbeitszeitmodell:\n\n* Vollzeit\n\n#### Quelle des
|
46 |
+
Stellenangebots:\n\narbeitsagentur.de\n\n#### Referenznummer:\n
|
47 |
+
\XXXXXXXX\n", "candidate_description": "* Transport,
|
48 |
+
Verkehr\n Grundkenntnisse\n Lagerarbeit, Transport\n
|
49 |
+
* Produktion, Verarbeitung, Technik\n Grundkenntnisse\n
|
50 |
+
Best\u00fccken, Maschinenf\u00fchrung, Anlagenf\u00fchrung, -bedienung,
|
51 |
+
Montage (Elektrotechnik)\n\nPers\u00f6nliche St\u00e4rken:\n\n
|
52 |
+
* Selbst\u00e4ndiges Arbeiten\n * Sorgfalt/Genauigkeit\n
|
53 |
+
* Motivation/ Leistungsbereitschaft\n * Zuverl\u00e4ssigkeit\n
|
54 |
+
* Lernbereitschaft\n\nSprachen:\n\n * Grundkenntnisse\n
|
55 |
+
Deutsch", "conditions_description": "Ort: Arbeitszeitmodell:
|
56 |
+
Vollzeit Vertragsart: Arbeitnehmer\u00fcberlassung mit
|
57 |
+
\u00dcbernahmeoption Branche: Elektro Startzeitpunkt: ab sofort Ihr Dienstleister im Gro\u00dfraum XXXX f\u00fcr
|
58 |
+
eine faire, professionelle Umsetzung Ihrer neuen beruflichen
|
59 |
+
Herausforderungen. Gestalten auch Sie Ihre berufliche Zukunft mit
|
60 |
+
uns! Zum n\u00e4chstm\u00f6glichen Zeitpunkt suchen wir die ideale
|
61 |
+
Besetzung f\u00fcr die Position: Mitarbeiter in der Produktion (m/w/d)
|
62 |
+
Langfristige Besch\u00e4ftigungsoption Ihre Vorteile: * All-in-One:
|
63 |
+
Umfassende Beratung und unkomplizierter Bewerbungsprozess mit XXXXX* Bezahlung: Attraktives Gehalt mit Zusatzleistungen (z.B.
|
64 |
+
Weihnachtsgeld) * Sicherheit: Vermittlung in einen zukunftssicheren
|
65 |
+
Arbeitsplatz * Work-Life-Balance: Geregelte Arbeitszeiten * Onboarding:
|
66 |
+
Umfangreiche und gr\u00fcndliche Einarbeitung * Abwechslung: Vielseitige
|
67 |
+
und spannende Aufgaben * Arbeitsumgebung: Flache Hierarchien, modernes
|
68 |
+
Arbeitsumfeld und ein aufgeschlossenes Team * Was wir von BS
|
poetry.lock
ADDED
The diff for this file is too large to render.
See raw diff
|
|
pyproject.toml
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[tool.poetry]
|
2 |
+
name = "family-compatibility"
|
3 |
+
version = "0.1.0"
|
4 |
+
description = ""
|
5 |
+
authors = ["Josephina Thiele <josephina.thiele@and-effect.com>"]
|
6 |
+
readme = "README.md"
|
7 |
+
|
8 |
+
[tool.poetry.dependencies]
|
9 |
+
python = "^3.11"
|
10 |
+
streamlit = "^1.39.0"
|
11 |
+
huggingface-hub = "^0.25.2"
|
12 |
+
spacy = "^3.8.2"
|
13 |
+
plotly = "^5.24.1"
|
14 |
+
python-dotenv = "^1.0.1"
|
15 |
+
spacy-streamlit = "^1.0.6"
|
16 |
+
|
17 |
+
|
18 |
+
[build-system]
|
19 |
+
requires = ["poetry-core"]
|
20 |
+
build-backend = "poetry.core.masonry.api"
|
requirements.txt
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
plotly
|
2 |
+
huggingface-hub
|
3 |
+
spacy
|
4 |
+
streamlit
|
5 |
+
spacy-streamlit
|
6 |
+
python-dotenv
|
setup.sh
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
# Install spaCy model
|
3 |
+
python -m spacy download de_core_news_sm
|