Spaces:
Runtime error
Runtime error
Vincent Claes
commited on
Commit
•
025b987
1
Parent(s):
1315f1b
add langchain
Browse files- Pipfile +1 -0
- Pipfile.lock +279 -99
- app.py +8 -3
- intro.py +1 -4
- recruiting_assistant.py +143 -0
- requirements.txt +22 -8
Pipfile
CHANGED
@@ -7,6 +7,7 @@ name = "pypi"
|
|
7 |
gradio = "*"
|
8 |
requests = "*"
|
9 |
openai = "*"
|
|
|
10 |
|
11 |
[dev-packages]
|
12 |
|
|
|
7 |
gradio = "*"
|
8 |
requests = "*"
|
9 |
openai = "*"
|
10 |
+
langchain = "*"
|
11 |
|
12 |
[dev-packages]
|
13 |
|
Pipfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
{
|
2 |
"_meta": {
|
3 |
"hash": {
|
4 |
-
"sha256": "
|
5 |
},
|
6 |
"pipfile-spec": 6,
|
7 |
"requires": {
|
@@ -26,96 +26,96 @@
|
|
26 |
},
|
27 |
"aiohttp": {
|
28 |
"hashes": [
|
29 |
-
"sha256:
|
30 |
-
"sha256:
|
31 |
-
"sha256:
|
32 |
-
"sha256:
|
33 |
-
"sha256:
|
34 |
-
"sha256:
|
35 |
-
"sha256:
|
36 |
-
"sha256:
|
37 |
-
"sha256:
|
38 |
-
"sha256:
|
39 |
-
"sha256:
|
40 |
-
"sha256:
|
41 |
-
"sha256:
|
42 |
-
"sha256:
|
43 |
-
"sha256:
|
44 |
-
"sha256:
|
45 |
-
"sha256:
|
46 |
-
"sha256:
|
47 |
-
"sha256:
|
48 |
-
"sha256:
|
49 |
-
"sha256:
|
50 |
-
"sha256:
|
51 |
-
"sha256:
|
52 |
-
"sha256:
|
53 |
-
"sha256:
|
54 |
-
"sha256:
|
55 |
-
"sha256:
|
56 |
-
"sha256:
|
57 |
-
"sha256:
|
58 |
-
"sha256:
|
59 |
-
"sha256:
|
60 |
-
"sha256:
|
61 |
-
"sha256:
|
62 |
-
"sha256:
|
63 |
-
"sha256:
|
64 |
-
"sha256:
|
65 |
-
"sha256:
|
66 |
-
"sha256:
|
67 |
-
"sha256:
|
68 |
-
"sha256:
|
69 |
-
"sha256:
|
70 |
-
"sha256:
|
71 |
-
"sha256:
|
72 |
-
"sha256:
|
73 |
-
"sha256:
|
74 |
-
"sha256:
|
75 |
-
"sha256:
|
76 |
-
"sha256:
|
77 |
-
"sha256:
|
78 |
-
"sha256:
|
79 |
-
"sha256:
|
80 |
-
"sha256:
|
81 |
-
"sha256:
|
82 |
-
"sha256:
|
83 |
-
"sha256:
|
84 |
-
"sha256:
|
85 |
-
"sha256:
|
86 |
-
"sha256:
|
87 |
-
"sha256:
|
88 |
-
"sha256:
|
89 |
-
"sha256:
|
90 |
-
"sha256:
|
91 |
-
"sha256:
|
92 |
-
"sha256:
|
93 |
-
"sha256:
|
94 |
-
"sha256:
|
95 |
-
"sha256:
|
96 |
-
"sha256:
|
97 |
-
"sha256:
|
98 |
-
"sha256:
|
99 |
-
"sha256:
|
100 |
-
"sha256:
|
101 |
-
"sha256:
|
102 |
-
"sha256:
|
103 |
-
"sha256:
|
104 |
-
"sha256:
|
105 |
-
"sha256:
|
106 |
-
"sha256:
|
107 |
-
"sha256:
|
108 |
-
"sha256:
|
109 |
-
"sha256:
|
110 |
-
"sha256:
|
111 |
-
"sha256:
|
112 |
-
"sha256:
|
113 |
-
"sha256:
|
114 |
-
"sha256:
|
115 |
-
"sha256:
|
116 |
],
|
117 |
"markers": "python_version >= '3.6'",
|
118 |
-
"version": "==3.8.
|
119 |
},
|
120 |
"aiosignal": {
|
121 |
"hashes": [
|
@@ -154,7 +154,7 @@
|
|
154 |
"sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15",
|
155 |
"sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"
|
156 |
],
|
157 |
-
"markers": "python_version
|
158 |
"version": "==4.0.2"
|
159 |
},
|
160 |
"attrs": {
|
@@ -315,6 +315,14 @@
|
|
315 |
"markers": "python_version >= '3.6'",
|
316 |
"version": "==0.11.0"
|
317 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
318 |
"exceptiongroup": {
|
319 |
"hashes": [
|
320 |
"sha256:12c3e887d6485d16943a309616de20ae5582633e0a2eda17f4e10fd61c1e8af5",
|
@@ -462,11 +470,11 @@
|
|
462 |
},
|
463 |
"gradio": {
|
464 |
"hashes": [
|
465 |
-
"sha256:
|
466 |
-
"sha256:
|
467 |
],
|
468 |
"index": "pypi",
|
469 |
-
"version": "==3.
|
470 |
},
|
471 |
"gradio-client": {
|
472 |
"hashes": [
|
@@ -622,6 +630,22 @@
|
|
622 |
"markers": "python_version >= '3.7'",
|
623 |
"version": "==1.4.4"
|
624 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
625 |
"linkify-it-py": {
|
626 |
"hashes": [
|
627 |
"sha256:19f3060727842c254c808e99d465c80c49d2c7306788140987a1a7a29b0d6ad2",
|
@@ -696,6 +720,14 @@
|
|
696 |
"markers": "python_version >= '3.7'",
|
697 |
"version": "==2.1.3"
|
698 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
699 |
"matplotlib": {
|
700 |
"hashes": [
|
701 |
"sha256:070f8dddd1f5939e60aacb8fa08f19551f4b0140fab16a3669d5cd6e9cb28fc8",
|
@@ -839,6 +871,50 @@
|
|
839 |
"markers": "python_version >= '3.7'",
|
840 |
"version": "==6.0.4"
|
841 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
842 |
"numpy": {
|
843 |
"hashes": [
|
844 |
"sha256:04640dab83f7c6c85abf9cd729c5b65f1ebd0ccf9de90b270cd61935eef0197f",
|
@@ -881,6 +957,14 @@
|
|
881 |
"index": "pypi",
|
882 |
"version": "==0.27.8"
|
883 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
884 |
"orjson": {
|
885 |
"hashes": [
|
886 |
"sha256:00c983896c2e01c94c0ef72fd7373b2aa06d0c0eed0342c4884559f812a6835b",
|
@@ -1044,11 +1128,45 @@
|
|
1044 |
},
|
1045 |
"pydantic": {
|
1046 |
"hashes": [
|
1047 |
-
"sha256:
|
1048 |
-
"sha256:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1049 |
],
|
1050 |
"markers": "python_version >= '3.7'",
|
1051 |
-
"version": "==
|
1052 |
},
|
1053 |
"pydantic-core": {
|
1054 |
"hashes": [
|
@@ -1392,6 +1510,53 @@
|
|
1392 |
"markers": "python_version >= '3.7'",
|
1393 |
"version": "==1.3.0"
|
1394 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1395 |
"starlette": {
|
1396 |
"hashes": [
|
1397 |
"sha256:6a6b0d042acb8d469a01eba54e9cda6cbd24ac602c4cd016723117d6a7e73b75",
|
@@ -1400,6 +1565,14 @@
|
|
1400 |
"markers": "python_version >= '3.7'",
|
1401 |
"version": "==0.27.0"
|
1402 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1403 |
"toolz": {
|
1404 |
"hashes": [
|
1405 |
"sha256:2059bd4148deb1884bb0eb770a3cde70e7f954cfbbdc2285f1f2de01fd21eb6f",
|
@@ -1424,6 +1597,13 @@
|
|
1424 |
"markers": "python_version >= '3.7'",
|
1425 |
"version": "==4.7.1"
|
1426 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1427 |
"tzdata": {
|
1428 |
"hashes": [
|
1429 |
"sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a",
|
@@ -1442,11 +1622,11 @@
|
|
1442 |
},
|
1443 |
"urllib3": {
|
1444 |
"hashes": [
|
1445 |
-
"sha256:
|
1446 |
-
"sha256:
|
1447 |
],
|
1448 |
"markers": "python_version >= '3.7'",
|
1449 |
-
"version": "==2.0.
|
1450 |
},
|
1451 |
"uvicorn": {
|
1452 |
"hashes": [
|
|
|
1 |
{
|
2 |
"_meta": {
|
3 |
"hash": {
|
4 |
+
"sha256": "e2a6b8196a8b1ec1b6f7422d0635c013e90cf416eb4eaaeab5cf71f2faa75879"
|
5 |
},
|
6 |
"pipfile-spec": 6,
|
7 |
"requires": {
|
|
|
26 |
},
|
27 |
"aiohttp": {
|
28 |
"hashes": [
|
29 |
+
"sha256:00ad4b6f185ec67f3e6562e8a1d2b69660be43070bd0ef6fcec5211154c7df67",
|
30 |
+
"sha256:0175d745d9e85c40dcc51c8f88c74bfbaef9e7afeeeb9d03c37977270303064c",
|
31 |
+
"sha256:01d4c0c874aa4ddfb8098e85d10b5e875a70adc63db91f1ae65a4b04d3344cda",
|
32 |
+
"sha256:043d2299f6dfdc92f0ac5e995dfc56668e1587cea7f9aa9d8a78a1b6554e5755",
|
33 |
+
"sha256:0c413c633d0512df4dc7fd2373ec06cc6a815b7b6d6c2f208ada7e9e93a5061d",
|
34 |
+
"sha256:0d21c684808288a98914e5aaf2a7c6a3179d4df11d249799c32d1808e79503b5",
|
35 |
+
"sha256:0e584a10f204a617d71d359fe383406305a4b595b333721fa50b867b4a0a1548",
|
36 |
+
"sha256:1274477e4c71ce8cfe6c1ec2f806d57c015ebf84d83373676036e256bc55d690",
|
37 |
+
"sha256:13bf85afc99ce6f9ee3567b04501f18f9f8dbbb2ea11ed1a2e079670403a7c84",
|
38 |
+
"sha256:153c2549f6c004d2754cc60603d4668899c9895b8a89397444a9c4efa282aaf4",
|
39 |
+
"sha256:1f7372f7341fcc16f57b2caded43e81ddd18df53320b6f9f042acad41f8e049a",
|
40 |
+
"sha256:23fb25a9f0a1ca1f24c0a371523546366bb642397c94ab45ad3aedf2941cec6a",
|
41 |
+
"sha256:28c543e54710d6158fc6f439296c7865b29e0b616629767e685a7185fab4a6b9",
|
42 |
+
"sha256:2a482e6da906d5e6e653be079b29bc173a48e381600161c9932d89dfae5942ef",
|
43 |
+
"sha256:2ad5c3c4590bb3cc28b4382f031f3783f25ec223557124c68754a2231d989e2b",
|
44 |
+
"sha256:2ce2ac5708501afc4847221a521f7e4b245abf5178cf5ddae9d5b3856ddb2f3a",
|
45 |
+
"sha256:2cf57fb50be5f52bda004b8893e63b48530ed9f0d6c96c84620dc92fe3cd9b9d",
|
46 |
+
"sha256:2e1b1e51b0774408f091d268648e3d57f7260c1682e7d3a63cb00d22d71bb945",
|
47 |
+
"sha256:2e2e9839e14dd5308ee773c97115f1e0a1cb1d75cbeeee9f33824fa5144c7634",
|
48 |
+
"sha256:2e460be6978fc24e3df83193dc0cc4de46c9909ed92dd47d349a452ef49325b7",
|
49 |
+
"sha256:312fcfbacc7880a8da0ae8b6abc6cc7d752e9caa0051a53d217a650b25e9a691",
|
50 |
+
"sha256:33279701c04351a2914e1100b62b2a7fdb9a25995c4a104259f9a5ead7ed4802",
|
51 |
+
"sha256:33776e945d89b29251b33a7e7d006ce86447b2cfd66db5e5ded4e5cd0340585c",
|
52 |
+
"sha256:34dd0c107799dcbbf7d48b53be761a013c0adf5571bf50c4ecad5643fe9cfcd0",
|
53 |
+
"sha256:3562b06567c06439d8b447037bb655ef69786c590b1de86c7ab81efe1c9c15d8",
|
54 |
+
"sha256:368a42363c4d70ab52c2c6420a57f190ed3dfaca6a1b19afda8165ee16416a82",
|
55 |
+
"sha256:4149d34c32f9638f38f544b3977a4c24052042affa895352d3636fa8bffd030a",
|
56 |
+
"sha256:461908b2578955045efde733719d62f2b649c404189a09a632d245b445c9c975",
|
57 |
+
"sha256:4a01951fabc4ce26ab791da5f3f24dca6d9a6f24121746eb19756416ff2d881b",
|
58 |
+
"sha256:4e874cbf8caf8959d2adf572a78bba17cb0e9d7e51bb83d86a3697b686a0ab4d",
|
59 |
+
"sha256:4f21e83f355643c345177a5d1d8079f9f28b5133bcd154193b799d380331d5d3",
|
60 |
+
"sha256:5443910d662db951b2e58eb70b0fbe6b6e2ae613477129a5805d0b66c54b6cb7",
|
61 |
+
"sha256:5798a9aad1879f626589f3df0f8b79b3608a92e9beab10e5fda02c8a2c60db2e",
|
62 |
+
"sha256:5d20003b635fc6ae3f96d7260281dfaf1894fc3aa24d1888a9b2628e97c241e5",
|
63 |
+
"sha256:5db3a5b833764280ed7618393832e0853e40f3d3e9aa128ac0ba0f8278d08649",
|
64 |
+
"sha256:5ed1c46fb119f1b59304b5ec89f834f07124cd23ae5b74288e364477641060ff",
|
65 |
+
"sha256:62360cb771707cb70a6fd114b9871d20d7dd2163a0feafe43fd115cfe4fe845e",
|
66 |
+
"sha256:6809a00deaf3810e38c628e9a33271892f815b853605a936e2e9e5129762356c",
|
67 |
+
"sha256:68c5a82c8779bdfc6367c967a4a1b2aa52cd3595388bf5961a62158ee8a59e22",
|
68 |
+
"sha256:6e4a280e4b975a2e7745573e3fc9c9ba0d1194a3738ce1cbaa80626cc9b4f4df",
|
69 |
+
"sha256:6e6783bcc45f397fdebc118d772103d751b54cddf5b60fbcc958382d7dd64f3e",
|
70 |
+
"sha256:72a860c215e26192379f57cae5ab12b168b75db8271f111019509a1196dfc780",
|
71 |
+
"sha256:7607ec3ce4993464368505888af5beb446845a014bc676d349efec0e05085905",
|
72 |
+
"sha256:773dd01706d4db536335fcfae6ea2440a70ceb03dd3e7378f3e815b03c97ab51",
|
73 |
+
"sha256:78d847e4cde6ecc19125ccbc9bfac4a7ab37c234dd88fbb3c5c524e8e14da543",
|
74 |
+
"sha256:7dde0009408969a43b04c16cbbe252c4f5ef4574ac226bc8815cd7342d2028b6",
|
75 |
+
"sha256:80bd372b8d0715c66c974cf57fe363621a02f359f1ec81cba97366948c7fc873",
|
76 |
+
"sha256:841cd8233cbd2111a0ef0a522ce016357c5e3aff8a8ce92bcfa14cef890d698f",
|
77 |
+
"sha256:84de26ddf621d7ac4c975dbea4c945860e08cccde492269db4e1538a6a6f3c35",
|
78 |
+
"sha256:84f8ae3e09a34f35c18fa57f015cc394bd1389bce02503fb30c394d04ee6b938",
|
79 |
+
"sha256:8af740fc2711ad85f1a5c034a435782fbd5b5f8314c9a3ef071424a8158d7f6b",
|
80 |
+
"sha256:8b929b9bd7cd7c3939f8bcfffa92fae7480bd1aa425279d51a89327d600c704d",
|
81 |
+
"sha256:910bec0c49637d213f5d9877105d26e0c4a4de2f8b1b29405ff37e9fc0ad52b8",
|
82 |
+
"sha256:96943e5dcc37a6529d18766597c491798b7eb7a61d48878611298afc1fca946c",
|
83 |
+
"sha256:a0215ce6041d501f3155dc219712bc41252d0ab76474615b9700d63d4d9292af",
|
84 |
+
"sha256:a3cf433f127efa43fee6b90ea4c6edf6c4a17109d1d037d1a52abec84d8f2e42",
|
85 |
+
"sha256:a6ce61195c6a19c785df04e71a4537e29eaa2c50fe745b732aa937c0c77169f3",
|
86 |
+
"sha256:a7a75ef35f2df54ad55dbf4b73fe1da96f370e51b10c91f08b19603c64004acc",
|
87 |
+
"sha256:a94159871304770da4dd371f4291b20cac04e8c94f11bdea1c3478e557fbe0d8",
|
88 |
+
"sha256:aa1990247f02a54185dc0dff92a6904521172a22664c863a03ff64c42f9b5410",
|
89 |
+
"sha256:ab88bafedc57dd0aab55fa728ea10c1911f7e4d8b43e1d838a1739f33712921c",
|
90 |
+
"sha256:ad093e823df03bb3fd37e7dec9d4670c34f9e24aeace76808fc20a507cace825",
|
91 |
+
"sha256:ae871a964e1987a943d83d6709d20ec6103ca1eaf52f7e0d36ee1b5bebb8b9b9",
|
92 |
+
"sha256:b0ba0d15164eae3d878260d4c4df859bbdc6466e9e6689c344a13334f988bb53",
|
93 |
+
"sha256:b5411d82cddd212644cf9360879eb5080f0d5f7d809d03262c50dad02f01421a",
|
94 |
+
"sha256:b9552ec52cc147dbf1944ac7ac98af7602e51ea2dcd076ed194ca3c0d1c7d0bc",
|
95 |
+
"sha256:bfb9162dcf01f615462b995a516ba03e769de0789de1cadc0f916265c257e5d8",
|
96 |
+
"sha256:c0a9034379a37ae42dea7ac1e048352d96286626251862e448933c0f59cbd79c",
|
97 |
+
"sha256:c1161b345c0a444ebcf46bf0a740ba5dcf50612fd3d0528883fdc0eff578006a",
|
98 |
+
"sha256:c11f5b099adafb18e65c2c997d57108b5bbeaa9eeee64a84302c0978b1ec948b",
|
99 |
+
"sha256:c44e65da1de4403d0576473e2344828ef9c4c6244d65cf4b75549bb46d40b8dd",
|
100 |
+
"sha256:c48c5c0271149cfe467c0ff8eb941279fd6e3f65c9a388c984e0e6cf57538e14",
|
101 |
+
"sha256:c7a815258e5895d8900aec4454f38dca9aed71085f227537208057853f9d13f2",
|
102 |
+
"sha256:cae533195e8122584ec87531d6df000ad07737eaa3c81209e85c928854d2195c",
|
103 |
+
"sha256:cc14be025665dba6202b6a71cfcdb53210cc498e50068bc088076624471f8bb9",
|
104 |
+
"sha256:cd56db019015b6acfaaf92e1ac40eb8434847d9bf88b4be4efe5bfd260aee692",
|
105 |
+
"sha256:d827176898a2b0b09694fbd1088c7a31836d1a505c243811c87ae53a3f6273c1",
|
106 |
+
"sha256:df72ac063b97837a80d80dec8d54c241af059cc9bb42c4de68bd5b61ceb37caa",
|
107 |
+
"sha256:e5980a746d547a6ba173fd5ee85ce9077e72d118758db05d229044b469d9029a",
|
108 |
+
"sha256:e5d47ae48db0b2dcf70bc8a3bc72b3de86e2a590fc299fdbbb15af320d2659de",
|
109 |
+
"sha256:e91d635961bec2d8f19dfeb41a539eb94bd073f075ca6dae6c8dc0ee89ad6f91",
|
110 |
+
"sha256:ea353162f249c8097ea63c2169dd1aa55de1e8fecbe63412a9bc50816e87b761",
|
111 |
+
"sha256:eaeed7abfb5d64c539e2db173f63631455f1196c37d9d8d873fc316470dfbacd",
|
112 |
+
"sha256:eca4bf3734c541dc4f374ad6010a68ff6c6748f00451707f39857f429ca36ced",
|
113 |
+
"sha256:f83a552443a526ea38d064588613aca983d0ee0038801bc93c0c916428310c28",
|
114 |
+
"sha256:fb1558def481d84f03b45888473fc5a1f35747b5f334ef4e7a571bc0dfcb11f8",
|
115 |
+
"sha256:fd1ed388ea7fbed22c4968dd64bab0198de60750a25fe8c0c9d4bef5abe13824"
|
116 |
],
|
117 |
"markers": "python_version >= '3.6'",
|
118 |
+
"version": "==3.8.5"
|
119 |
},
|
120 |
"aiosignal": {
|
121 |
"hashes": [
|
|
|
154 |
"sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15",
|
155 |
"sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"
|
156 |
],
|
157 |
+
"markers": "python_version < '3.11'",
|
158 |
"version": "==4.0.2"
|
159 |
},
|
160 |
"attrs": {
|
|
|
315 |
"markers": "python_version >= '3.6'",
|
316 |
"version": "==0.11.0"
|
317 |
},
|
318 |
+
"dataclasses-json": {
|
319 |
+
"hashes": [
|
320 |
+
"sha256:425810e1356fb6917eb7c323e3aaee0c9398fc55b5001d3532381679f727fc18",
|
321 |
+
"sha256:97b13447f2e0b96aa6e52509040c12d70c61df8a972f3feb5cc89a6da5e177bd"
|
322 |
+
],
|
323 |
+
"markers": "python_version < '3.12' and python_version >= '3.7'",
|
324 |
+
"version": "==0.5.13"
|
325 |
+
},
|
326 |
"exceptiongroup": {
|
327 |
"hashes": [
|
328 |
"sha256:12c3e887d6485d16943a309616de20ae5582633e0a2eda17f4e10fd61c1e8af5",
|
|
|
470 |
},
|
471 |
"gradio": {
|
472 |
"hashes": [
|
473 |
+
"sha256:3ac954349ab00e1d78c6b87940e49853e5fb800a1ef35ff0a24796eb2f4803f5",
|
474 |
+
"sha256:cc08db00efd8ab00fef2d655f80ee18d4330fe08d0d412914cb0606b4a05881b"
|
475 |
],
|
476 |
"index": "pypi",
|
477 |
+
"version": "==3.38.0"
|
478 |
},
|
479 |
"gradio-client": {
|
480 |
"hashes": [
|
|
|
630 |
"markers": "python_version >= '3.7'",
|
631 |
"version": "==1.4.4"
|
632 |
},
|
633 |
+
"langchain": {
|
634 |
+
"hashes": [
|
635 |
+
"sha256:17ba2cd5386c0bbc2c7725b5f78fa85a3e040318f09fd64c57a20554461f33c7",
|
636 |
+
"sha256:25ff3bb2c3f166ffec4dd82d746561b85d535da5e8d47dab4e360fe6ceb298ee"
|
637 |
+
],
|
638 |
+
"index": "pypi",
|
639 |
+
"version": "==0.0.238"
|
640 |
+
},
|
641 |
+
"langsmith": {
|
642 |
+
"hashes": [
|
643 |
+
"sha256:5abf30ac4ebb6b68955bea617669585e80a6fe9def90664503d5fbd6d095e91e",
|
644 |
+
"sha256:d7a4360d1984b57689c6470ffcef79dcb217dd7129bdfd3bcfcb22dc058787f6"
|
645 |
+
],
|
646 |
+
"markers": "python_version < '4.0' and python_full_version >= '3.8.1'",
|
647 |
+
"version": "==0.0.12"
|
648 |
+
},
|
649 |
"linkify-it-py": {
|
650 |
"hashes": [
|
651 |
"sha256:19f3060727842c254c808e99d465c80c49d2c7306788140987a1a7a29b0d6ad2",
|
|
|
720 |
"markers": "python_version >= '3.7'",
|
721 |
"version": "==2.1.3"
|
722 |
},
|
723 |
+
"marshmallow": {
|
724 |
+
"hashes": [
|
725 |
+
"sha256:5d2371bbe42000f2b3fb5eaa065224df7d8f8597bc19a1bbfa5bfe7fba8da889",
|
726 |
+
"sha256:684939db93e80ad3561392f47be0230743131560a41c5110684c16e21ade0a5c"
|
727 |
+
],
|
728 |
+
"markers": "python_version >= '3.8'",
|
729 |
+
"version": "==3.20.1"
|
730 |
+
},
|
731 |
"matplotlib": {
|
732 |
"hashes": [
|
733 |
"sha256:070f8dddd1f5939e60aacb8fa08f19551f4b0140fab16a3669d5cd6e9cb28fc8",
|
|
|
871 |
"markers": "python_version >= '3.7'",
|
872 |
"version": "==6.0.4"
|
873 |
},
|
874 |
+
"mypy-extensions": {
|
875 |
+
"hashes": [
|
876 |
+
"sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
|
877 |
+
"sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"
|
878 |
+
],
|
879 |
+
"markers": "python_version >= '3.5'",
|
880 |
+
"version": "==1.0.0"
|
881 |
+
},
|
882 |
+
"numexpr": {
|
883 |
+
"hashes": [
|
884 |
+
"sha256:059546e8f6283ccdb47c683101a890844f667fa6d56258d48ae2ecf1b3875957",
|
885 |
+
"sha256:17ac9cfe6d0078c5fc06ba1c1bbd20b8783f28c6f475bbabd3cad53683075cab",
|
886 |
+
"sha256:3f039321d1c17962c33079987b675fb251b273dbec0f51aac0934e932446ccc3",
|
887 |
+
"sha256:5538b30199bfc68886d2be18fcef3abd11d9271767a7a69ff3688defe782800a",
|
888 |
+
"sha256:655d84eb09adfee3c09ecf4a89a512225da153fdb7de13c447404b7d0523a9a7",
|
889 |
+
"sha256:6931b1e9d4f629f43c14b21d44f3f77997298bea43790cfcdb4dd98804f90783",
|
890 |
+
"sha256:6c368aa35ae9b18840e78b05f929d3a7b3abccdba9630a878c7db74ca2368339",
|
891 |
+
"sha256:6ee9db7598dd4001138b482342b96d78110dd77cefc051ec75af3295604dde6a",
|
892 |
+
"sha256:77898fdf3da6bb96aa8a4759a8231d763a75d848b2f2e5c5279dad0b243c8dfe",
|
893 |
+
"sha256:7bca95f4473b444428061d4cda8e59ac564dc7dc6a1dea3015af9805c6bc2946",
|
894 |
+
"sha256:7d71add384adc9119568d7e9ffa8a35b195decae81e0abf54a2b7779852f0637",
|
895 |
+
"sha256:845a6aa0ed3e2a53239b89c1ebfa8cf052d3cc6e053c72805e8153300078c0b1",
|
896 |
+
"sha256:90f12cc851240f7911a47c91aaf223dba753e98e46dff3017282e633602e76a7",
|
897 |
+
"sha256:9400781553541f414f82eac056f2b4c965373650df9694286b9bd7e8d413f8d8",
|
898 |
+
"sha256:9e34931089a6bafc77aaae21f37ad6594b98aa1085bb8b45d5b3cd038c3c17d9",
|
899 |
+
"sha256:9f096d707290a6a00b6ffdaf581ee37331109fb7b6c8744e9ded7c779a48e517",
|
900 |
+
"sha256:a38664e699526cb1687aefd9069e2b5b9387da7feac4545de446141f1ef86f46",
|
901 |
+
"sha256:a6d2d7740ae83ba5f3531e83afc4b626daa71df1ef903970947903345c37bd03",
|
902 |
+
"sha256:a75967d46b6bd56455dd32da6285e5ffabe155d0ee61eef685bbfb8dafb2e484",
|
903 |
+
"sha256:b076db98ca65eeaf9bd224576e3ac84c05e451c0bd85b13664b7e5f7b62e2c70",
|
904 |
+
"sha256:b318541bf3d8326682ebada087ba0050549a16d8b3fa260dd2585d73a83d20a7",
|
905 |
+
"sha256:b96334fc1748e9ec4f93d5fadb1044089d73fb08208fdb8382ed77c893f0be01",
|
906 |
+
"sha256:c867cc36cf815a3ec9122029874e00d8fbcef65035c4a5901e9b120dd5d626a2",
|
907 |
+
"sha256:d5432537418d18691b9115d615d6daa17ee8275baef3edf1afbbf8bc69806147",
|
908 |
+
"sha256:db93cf1842f068247de631bfc8af20118bf1f9447cd929b531595a5e0efc9346",
|
909 |
+
"sha256:df35324666b693f13a016bc7957de7cc4d8801b746b81060b671bf78a52b9037",
|
910 |
+
"sha256:df3a1f6b24214a1ab826e9c1c99edf1686c8e307547a9aef33910d586f626d01",
|
911 |
+
"sha256:eaec59e9bf70ff05615c34a8b8d6c7bd042bd9f55465d7b495ea5436f45319d0",
|
912 |
+
"sha256:f3a920bfac2645017110b87ddbe364c9c7a742870a4d2f6120b8786c25dc6db3",
|
913 |
+
"sha256:ff5835e8af9a212e8480003d731aad1727aaea909926fd009e8ae6a1cba7f141"
|
914 |
+
],
|
915 |
+
"markers": "python_version >= '3.7'",
|
916 |
+
"version": "==2.8.4"
|
917 |
+
},
|
918 |
"numpy": {
|
919 |
"hashes": [
|
920 |
"sha256:04640dab83f7c6c85abf9cd729c5b65f1ebd0ccf9de90b270cd61935eef0197f",
|
|
|
957 |
"index": "pypi",
|
958 |
"version": "==0.27.8"
|
959 |
},
|
960 |
+
"openapi-schema-pydantic": {
|
961 |
+
"hashes": [
|
962 |
+
"sha256:3e22cf58b74a69f752cc7e5f1537f6e44164282db2700cbbcd3bb99ddd065196",
|
963 |
+
"sha256:a932ecc5dcbb308950282088956e94dea069c9823c84e507d64f6b622222098c"
|
964 |
+
],
|
965 |
+
"markers": "python_full_version >= '3.6.1'",
|
966 |
+
"version": "==1.2.4"
|
967 |
+
},
|
968 |
"orjson": {
|
969 |
"hashes": [
|
970 |
"sha256:00c983896c2e01c94c0ef72fd7373b2aa06d0c0eed0342c4884559f812a6835b",
|
|
|
1128 |
},
|
1129 |
"pydantic": {
|
1130 |
"hashes": [
|
1131 |
+
"sha256:008c5e266c8aada206d0627a011504e14268a62091450210eda7c07fabe6963e",
|
1132 |
+
"sha256:0588788a9a85f3e5e9ebca14211a496409cb3deca5b6971ff37c556d581854e7",
|
1133 |
+
"sha256:08a6c32e1c3809fbc49debb96bf833164f3438b3696abf0fbeceb417d123e6eb",
|
1134 |
+
"sha256:16928fdc9cb273c6af00d9d5045434c39afba5f42325fb990add2c241402d151",
|
1135 |
+
"sha256:174899023337b9fc685ac8adaa7b047050616136ccd30e9070627c1aaab53a13",
|
1136 |
+
"sha256:192c608ad002a748e4a0bed2ddbcd98f9b56df50a7c24d9a931a8c5dd053bd3d",
|
1137 |
+
"sha256:1954f8778489a04b245a1e7b8b22a9d3ea8ef49337285693cf6959e4b757535e",
|
1138 |
+
"sha256:2417de68290434461a266271fc57274a138510dca19982336639484c73a07af6",
|
1139 |
+
"sha256:265a60da42f9f27e0b1014eab8acd3e53bd0bad5c5b4884e98a55f8f596b2c19",
|
1140 |
+
"sha256:331c031ba1554b974c98679bd0780d89670d6fd6f53f5d70b10bdc9addee1713",
|
1141 |
+
"sha256:373c0840f5c2b5b1ccadd9286782852b901055998136287828731868027a724f",
|
1142 |
+
"sha256:3f34739a89260dfa420aa3cbd069fbcc794b25bbe5c0a214f8fb29e363484b66",
|
1143 |
+
"sha256:41e0bb6efe86281623abbeeb0be64eab740c865388ee934cd3e6a358784aca6e",
|
1144 |
+
"sha256:4400015f15c9b464c9db2d5d951b6a780102cfa5870f2c036d37c23b56f7fc1b",
|
1145 |
+
"sha256:44e51ba599c3ef227e168424e220cd3e544288c57829520dc90ea9cb190c3248",
|
1146 |
+
"sha256:469adf96c8e2c2bbfa655fc7735a2a82f4c543d9fee97bd113a7fb509bf5e622",
|
1147 |
+
"sha256:5b02d24f7b2b365fed586ed73582c20f353a4c50e4be9ba2c57ab96f8091ddae",
|
1148 |
+
"sha256:7522a7666157aa22b812ce14c827574ddccc94f361237ca6ea8bb0d5c38f1629",
|
1149 |
+
"sha256:787cf23e5a0cde753f2eabac1b2e73ae3844eb873fd1f5bdbff3048d8dbb7604",
|
1150 |
+
"sha256:8268a735a14c308923e8958363e3a3404f6834bb98c11f5ab43251a4e410170c",
|
1151 |
+
"sha256:8dc77064471780262b6a68fe67e013298d130414d5aaf9b562c33987dbd2cf4f",
|
1152 |
+
"sha256:a451ccab49971af043ec4e0d207cbc8cbe53dbf148ef9f19599024076fe9c25b",
|
1153 |
+
"sha256:a6c098d4ab5e2d5b3984d3cb2527e2d6099d3de85630c8934efcfdc348a9760e",
|
1154 |
+
"sha256:abade85268cc92dff86d6effcd917893130f0ff516f3d637f50dadc22ae93999",
|
1155 |
+
"sha256:bc64eab9b19cd794a380179ac0e6752335e9555d214cfcb755820333c0784cb3",
|
1156 |
+
"sha256:c3339a46bbe6013ef7bdd2844679bfe500347ac5742cd4019a88312aa58a9847",
|
1157 |
+
"sha256:d185819a7a059550ecb85d5134e7d40f2565f3dd94cfd870132c5f91a89cf58c",
|
1158 |
+
"sha256:d7781f1d13b19700b7949c5a639c764a077cbbdd4322ed505b449d3ca8edcb36",
|
1159 |
+
"sha256:e297897eb4bebde985f72a46a7552a7556a3dd11e7f76acda0c1093e3dbcf216",
|
1160 |
+
"sha256:e6cbfbd010b14c8a905a7b10f9fe090068d1744d46f9e0c021db28daeb8b6de1",
|
1161 |
+
"sha256:e9738b0f2e6c70f44ee0de53f2089d6002b10c33264abee07bdb5c7f03038303",
|
1162 |
+
"sha256:e9baf78b31da2dc3d3f346ef18e58ec5f12f5aaa17ac517e2ffd026a92a87588",
|
1163 |
+
"sha256:ef55392ec4bb5721f4ded1096241e4b7151ba6d50a50a80a2526c854f42e6a2f",
|
1164 |
+
"sha256:f66d479cf7eb331372c470614be6511eae96f1f120344c25f3f9bb59fb1b5528",
|
1165 |
+
"sha256:fe429898f2c9dd209bd0632a606bddc06f8bce081bbd03d1c775a45886e2c1cb",
|
1166 |
+
"sha256:ff44c5e89315b15ff1f7fdaf9853770b810936d6b01a7bcecaa227d2f8fe444f"
|
1167 |
],
|
1168 |
"markers": "python_version >= '3.7'",
|
1169 |
+
"version": "==1.10.11"
|
1170 |
},
|
1171 |
"pydantic-core": {
|
1172 |
"hashes": [
|
|
|
1510 |
"markers": "python_version >= '3.7'",
|
1511 |
"version": "==1.3.0"
|
1512 |
},
|
1513 |
+
"sqlalchemy": {
|
1514 |
+
"hashes": [
|
1515 |
+
"sha256:024d2f67fb3ec697555e48caeb7147cfe2c08065a4f1a52d93c3d44fc8e6ad1c",
|
1516 |
+
"sha256:0bf0fd65b50a330261ec7fe3d091dfc1c577483c96a9fa1e4323e932961aa1b5",
|
1517 |
+
"sha256:16a310f5bc75a5b2ce7cb656d0e76eb13440b8354f927ff15cbaddd2523ee2d1",
|
1518 |
+
"sha256:1d90ccc15ba1baa345796a8fb1965223ca7ded2d235ccbef80a47b85cea2d71a",
|
1519 |
+
"sha256:22bafb1da60c24514c141a7ff852b52f9f573fb933b1e6b5263f0daa28ce6db9",
|
1520 |
+
"sha256:2c69ce70047b801d2aba3e5ff3cba32014558966109fecab0c39d16c18510f15",
|
1521 |
+
"sha256:2e7b69d9ced4b53310a87117824b23c509c6fc1f692aa7272d47561347e133b6",
|
1522 |
+
"sha256:314145c1389b021a9ad5aa3a18bac6f5d939f9087d7fc5443be28cba19d2c972",
|
1523 |
+
"sha256:3afa8a21a9046917b3a12ffe016ba7ebe7a55a6fc0c7d950beb303c735c3c3ad",
|
1524 |
+
"sha256:430614f18443b58ceb9dedec323ecddc0abb2b34e79d03503b5a7579cd73a531",
|
1525 |
+
"sha256:43699eb3f80920cc39a380c159ae21c8a8924fe071bccb68fc509e099420b148",
|
1526 |
+
"sha256:539010665c90e60c4a1650afe4ab49ca100c74e6aef882466f1de6471d414be7",
|
1527 |
+
"sha256:57d100a421d9ab4874f51285c059003292433c648df6abe6c9c904e5bd5b0828",
|
1528 |
+
"sha256:5831138f0cc06b43edf5f99541c64adf0ab0d41f9a4471fd63b54ae18399e4de",
|
1529 |
+
"sha256:584f66e5e1979a7a00f4935015840be627e31ca29ad13f49a6e51e97a3fb8cae",
|
1530 |
+
"sha256:5d6afc41ca0ecf373366fd8e10aee2797128d3ae45eb8467b19da4899bcd1ee0",
|
1531 |
+
"sha256:61ada5831db36d897e28eb95f0f81814525e0d7927fb51145526c4e63174920b",
|
1532 |
+
"sha256:6b54d1ad7a162857bb7c8ef689049c7cd9eae2f38864fc096d62ae10bc100c7d",
|
1533 |
+
"sha256:7351c05db355da112e056a7b731253cbeffab9dfdb3be1e895368513c7d70106",
|
1534 |
+
"sha256:77a14fa20264af73ddcdb1e2b9c5a829b8cc6b8304d0f093271980e36c200a3f",
|
1535 |
+
"sha256:851a37898a8a39783aab603c7348eb5b20d83c76a14766a43f56e6ad422d1ec8",
|
1536 |
+
"sha256:89bc2b374ebee1a02fd2eae6fd0570b5ad897ee514e0f84c5c137c942772aa0c",
|
1537 |
+
"sha256:8e712cfd2e07b801bc6b60fdf64853bc2bd0af33ca8fa46166a23fe11ce0dbb0",
|
1538 |
+
"sha256:8f9eb4575bfa5afc4b066528302bf12083da3175f71b64a43a7c0badda2be365",
|
1539 |
+
"sha256:8fc05b59142445a4efb9c1fd75c334b431d35c304b0e33f4fa0ff1ea4890f92e",
|
1540 |
+
"sha256:96f0463573469579d32ad0c91929548d78314ef95c210a8115346271beeeaaa2",
|
1541 |
+
"sha256:9deaae357edc2091a9ed5d25e9ee8bba98bcfae454b3911adeaf159c2e9ca9e3",
|
1542 |
+
"sha256:a752b7a9aceb0ba173955d4f780c64ee15a1a991f1c52d307d6215c6c73b3a4c",
|
1543 |
+
"sha256:ae7473a67cd82a41decfea58c0eac581209a0aa30f8bc9190926fbf628bb17f7",
|
1544 |
+
"sha256:b15afbf5aa76f2241184c1d3b61af1a72ba31ce4161013d7cb5c4c2fca04fd6e",
|
1545 |
+
"sha256:c896d4e6ab2eba2afa1d56be3d0b936c56d4666e789bfc59d6ae76e9fcf46145",
|
1546 |
+
"sha256:cb4e688f6784427e5f9479d1a13617f573de8f7d4aa713ba82813bcd16e259d1",
|
1547 |
+
"sha256:cda283700c984e699e8ef0fcc5c61f00c9d14b6f65a4f2767c97242513fcdd84",
|
1548 |
+
"sha256:cf7b5e3856cbf1876da4e9d9715546fa26b6e0ba1a682d5ed2fc3ca4c7c3ec5b",
|
1549 |
+
"sha256:d6894708eeb81f6d8193e996257223b6bb4041cb05a17cd5cf373ed836ef87a2",
|
1550 |
+
"sha256:d8f2afd1aafded7362b397581772c670f20ea84d0a780b93a1a1529da7c3d369",
|
1551 |
+
"sha256:dd4d410a76c3762511ae075d50f379ae09551d92525aa5bb307f8343bf7c2c12",
|
1552 |
+
"sha256:eb60699de43ba1a1f77363f563bb2c652f7748127ba3a774f7cf2c7804aa0d3d",
|
1553 |
+
"sha256:f469f15068cd8351826df4080ffe4cc6377c5bf7d29b5a07b0e717dddb4c7ea2",
|
1554 |
+
"sha256:f82c310ddf97b04e1392c33cf9a70909e0ae10a7e2ddc1d64495e3abdc5d19fb",
|
1555 |
+
"sha256:fa51ce4aea583b0c6b426f4b0563d3535c1c75986c4373a0987d84d22376585b"
|
1556 |
+
],
|
1557 |
+
"markers": "python_version >= '3.7'",
|
1558 |
+
"version": "==2.0.19"
|
1559 |
+
},
|
1560 |
"starlette": {
|
1561 |
"hashes": [
|
1562 |
"sha256:6a6b0d042acb8d469a01eba54e9cda6cbd24ac602c4cd016723117d6a7e73b75",
|
|
|
1565 |
"markers": "python_version >= '3.7'",
|
1566 |
"version": "==0.27.0"
|
1567 |
},
|
1568 |
+
"tenacity": {
|
1569 |
+
"hashes": [
|
1570 |
+
"sha256:2f277afb21b851637e8f52e6a613ff08734c347dc19ade928e519d7d2d8569b0",
|
1571 |
+
"sha256:43af037822bd0029025877f3b2d97cc4d7bb0c2991000a3d59d71517c5c969e0"
|
1572 |
+
],
|
1573 |
+
"markers": "python_version >= '3.6'",
|
1574 |
+
"version": "==8.2.2"
|
1575 |
+
},
|
1576 |
"toolz": {
|
1577 |
"hashes": [
|
1578 |
"sha256:2059bd4148deb1884bb0eb770a3cde70e7f954cfbbdc2285f1f2de01fd21eb6f",
|
|
|
1597 |
"markers": "python_version >= '3.7'",
|
1598 |
"version": "==4.7.1"
|
1599 |
},
|
1600 |
+
"typing-inspect": {
|
1601 |
+
"hashes": [
|
1602 |
+
"sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f",
|
1603 |
+
"sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"
|
1604 |
+
],
|
1605 |
+
"version": "==0.9.0"
|
1606 |
+
},
|
1607 |
"tzdata": {
|
1608 |
"hashes": [
|
1609 |
"sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a",
|
|
|
1622 |
},
|
1623 |
"urllib3": {
|
1624 |
"hashes": [
|
1625 |
+
"sha256:8d22f86aae8ef5e410d4f539fde9ce6b2113a001bb4d189e0aed70642d602b11",
|
1626 |
+
"sha256:de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4"
|
1627 |
],
|
1628 |
"markers": "python_version >= '3.7'",
|
1629 |
+
"version": "==2.0.4"
|
1630 |
},
|
1631 |
"uvicorn": {
|
1632 |
"hashes": [
|
app.py
CHANGED
@@ -3,6 +3,9 @@ import os
|
|
3 |
import gradio as gr
|
4 |
import requests
|
5 |
import intro
|
|
|
|
|
|
|
6 |
def search_resume(input_text):
|
7 |
url = f"https://n970resrb9.execute-api.eu-west-1.amazonaws.com/dev/prediction" # replace with your API endpoint
|
8 |
headers = {'Content-Type': 'application/json', "x-api-key": os.environ["API_KEY"]} # adjust headers as needed
|
@@ -90,13 +93,15 @@ with demo:
|
|
90 |
gr.Markdown("""
|
91 |
## 3. You have a relevant introduction email to send to the customer
|
92 |
""")
|
93 |
-
text_intro = gr.Textbox()
|
94 |
-
|
|
|
95 |
inputs=[
|
96 |
text_vacancy,
|
97 |
text_resume
|
98 |
],
|
99 |
-
outputs=text_intro
|
|
|
100 |
|
101 |
examples = gr.Examples(
|
102 |
examples=examples,
|
|
|
3 |
import gradio as gr
|
4 |
import requests
|
5 |
import intro
|
6 |
+
import recruiting_assistant
|
7 |
+
|
8 |
+
|
9 |
def search_resume(input_text):
|
10 |
url = f"https://n970resrb9.execute-api.eu-west-1.amazonaws.com/dev/prediction" # replace with your API endpoint
|
11 |
headers = {'Content-Type': 'application/json', "x-api-key": os.environ["API_KEY"]} # adjust headers as needed
|
|
|
93 |
gr.Markdown("""
|
94 |
## 3. You have a relevant introduction email to send to the customer
|
95 |
""")
|
96 |
+
text_intro = gr.Textbox(label="Intro Email")
|
97 |
+
evaluation = gr.Textbox(label="Evaluation of the skills")
|
98 |
+
b2.click(recruiting_assistant.create_intro,
|
99 |
inputs=[
|
100 |
text_vacancy,
|
101 |
text_resume
|
102 |
],
|
103 |
+
outputs=[text_intro, evaluation]
|
104 |
+
)
|
105 |
|
106 |
examples = gr.Examples(
|
107 |
examples=examples,
|
intro.py
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
import os
|
2 |
-
import json
|
3 |
import openai
|
4 |
|
5 |
|
@@ -37,8 +36,6 @@ def call_openai(model, prompt):
|
|
37 |
return result
|
38 |
|
39 |
vacancy = """
|
40 |
-
|
41 |
-
|
42 |
DATA SCIENTIST - GENTIS
|
43 |
========================
|
44 |
|
@@ -122,4 +119,4 @@ def create(vacancy=vacancy, resume=resume):
|
|
122 |
"""
|
123 |
response = call_openai(model=MODEL, prompt=cover_letter)
|
124 |
print(response)
|
125 |
-
return response
|
|
|
1 |
import os
|
|
|
2 |
import openai
|
3 |
|
4 |
|
|
|
36 |
return result
|
37 |
|
38 |
vacancy = """
|
|
|
|
|
39 |
DATA SCIENTIST - GENTIS
|
40 |
========================
|
41 |
|
|
|
119 |
"""
|
120 |
response = call_openai(model=MODEL, prompt=cover_letter)
|
121 |
print(response)
|
122 |
+
return response
|
recruiting_assistant.py
ADDED
@@ -0,0 +1,143 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import json
|
2 |
+
import os
|
3 |
+
from langchain.chat_models import ChatOpenAI
|
4 |
+
from langchain.prompts import ChatPromptTemplate
|
5 |
+
from langchain.chains import LLMChain, SequentialChain
|
6 |
+
|
7 |
+
# os.environ["OPENA"]
|
8 |
+
|
9 |
+
|
10 |
+
vacancy = """
|
11 |
+
DATA SCIENTIST - GENTIS
|
12 |
+
========================
|
13 |
+
|
14 |
+
Profile:
|
15 |
+
|
16 |
+
Min of 3 years experience as a Data Scientist
|
17 |
+
Experience in Python and SQL
|
18 |
+
Communicative very strong
|
19 |
+
Experience in coaching and supporting junior collegues
|
20 |
+
Experience in Google Cloud is a plus
|
21 |
+
Experience in Machine Learning is a plus
|
22 |
+
|
23 |
+
They offer:
|
24 |
+
|
25 |
+
An opportunity to be part of not only a fast-growing, innovative company, but one where you as a person can grow professionally as fast as the company
|
26 |
+
A close-knit and diverse team who are all ready to help, listen and give advice to each other
|
27 |
+
Training opportunities (because they don't stand still, so neither do you)
|
28 |
+
Trendy and young company where everyone can be their own
|
29 |
+
A very nice salary package and much more
|
30 |
+
Lots of remote work and flexibility, so bye bye traffic JAMS!
|
31 |
+
A renovated office with everything you could dream of full with surprises and extras
|
32 |
+
|
33 |
+
"""
|
34 |
+
|
35 |
+
|
36 |
+
resume = """
|
37 |
+
John Doe
|
38 |
+
=============================
|
39 |
+
|
40 |
+
Skills
|
41 |
+
- Python
|
42 |
+
- Tableau
|
43 |
+
- Data Visualization
|
44 |
+
- R Studio
|
45 |
+
- Machine Learning
|
46 |
+
- Statistics IABAC Certified Data Scientist with versatile experience over 1+ years in managing business, data science consulting and leading innovation projects, bringing business ideas to working real world solutions.
|
47 |
+
Being a strong advocator of augmented era, where human capabilities are enhanced by machines, Fahed is passionate about bringing business concepts in area of machine learning, AI, robotics etc., to real life solutions.Education Details January 2017 B.
|
48 |
+
Tech Computer Science & Engineering Mohali, Punjab Indo Global College of Engineering Data Science Consultant Data Science Consultant - Datamites Skill Details MACHINE LEARNING- Exprience - 13 months PYTHON- Exprience - 24 months SOLUTIONS- Exprience - 24 months DATA SCIENCE- Exprience - 24 months DATA VISUALIZATION- Exprience - 24 months Tableau- Exprience - 24 monthsCompany Details company - Datamites description -
|
49 |
+
- Analyzed and processed complex data sets using advanced querying, visualization and analytics tools.
|
50 |
+
|
51 |
+
- Responsible for loading, extracting and validation of client data.
|
52 |
+
|
53 |
+
- Worked on manipulating, cleaning & processing data using python.
|
54 |
+
|
55 |
+
- Used Tableau for data visualization.
|
56 |
+
company - Heretic Solutions Pvt Ltd description -
|
57 |
+
- Worked closely with business to identify issues and used data to propose solutions for effective decision making.
|
58 |
+
|
59 |
+
- Manipulating, cleansing & processing data using Python, Excel and R.
|
60 |
+
|
61 |
+
- Analyzed raw data, drawing conclusions & developing recommendations.
|
62 |
+
|
63 |
+
- Used machine learning tools and statistical techniques to produce solutions to problems.
|
64 |
+
|
65 |
+
"""
|
66 |
+
|
67 |
+
llm = ChatOpenAI(temperature=0.0, openai_api_key=os.environ["OPENAI"])
|
68 |
+
|
69 |
+
|
70 |
+
def create_intro(vacancy=vacancy, resume=resume):
|
71 |
+
|
72 |
+
template_vacancy_get_skills = """
|
73 |
+
Can you generate me a list of the skills that a candidate supposed to have for the below vacancy delimited by three backticks.
|
74 |
+
If you do not know if skills are available menion that you do not know and do not make up an answer.
|
75 |
+
Mention the skills in 1 to maximum three words for each skill. Return the skills as a JSON list.
|
76 |
+
|
77 |
+
```
|
78 |
+
{vacancy}
|
79 |
+
```
|
80 |
+
"""
|
81 |
+
|
82 |
+
prompt_vacancy_get_skills = ChatPromptTemplate.from_template(template=template_vacancy_get_skills)
|
83 |
+
vacancy_skills = LLMChain(llm=llm, prompt=prompt_vacancy_get_skills, output_key="vacancy_skills")
|
84 |
+
|
85 |
+
template_resume_check_skills = """
|
86 |
+
```
|
87 |
+
{vacancy_skills}
|
88 |
+
```
|
89 |
+
|
90 |
+
Based on the above list of skills required by a vacancy delimited by backticks,
|
91 |
+
Can you create a JSON object based on the below keys each starting with '-', with respect to the resume below delimited by three backticks?
|
92 |
+
|
93 |
+
- "skills_present": <list the skills present. If no skills are present return an empty list, do not make up an answer. >
|
94 |
+
- "skills_not_present": <list the skills not present. If all skills are present return here empty list, do not make up an answer.>
|
95 |
+
- "score": <calculate a percentage of the number of skills present with respect to the total skills requested>
|
96 |
+
|
97 |
+
```
|
98 |
+
{resume}
|
99 |
+
```
|
100 |
+
"""
|
101 |
+
|
102 |
+
prompt_resume_check_skills = ChatPromptTemplate.from_template(template=template_resume_check_skills)
|
103 |
+
resume_skills = LLMChain(llm=llm, prompt=prompt_resume_check_skills, output_key="resume_skills")
|
104 |
+
|
105 |
+
template_introduction_email = """
|
106 |
+
You are a recruitment specialist that tries to place the right profiles for the right job.
|
107 |
+
I have a vacancy below the delimiter <VACANCY> and ends with </VACANCY>
|
108 |
+
and I have a candidate its resume below the delimiter <RESUME> and it ends with </RESUME>.
|
109 |
+
|
110 |
+
<VACANCY>
|
111 |
+
{vacancy}
|
112 |
+
</VACANCY>
|
113 |
+
|
114 |
+
<RESUME>
|
115 |
+
{resume}
|
116 |
+
</RESUME>
|
117 |
+
|
118 |
+
Can you fill in the introduction email below and only return as answer this introduction email?
|
119 |
+
|
120 |
+
Role: < the role of the vacancy >
|
121 |
+
Candidate: < name of the candidate >
|
122 |
+
Education: < name the education of the candidate >
|
123 |
+
Responsibilities: < did the candidate worked as an individual contributor or did het take on leadership postitions? >
|
124 |
+
Experience: < name 2 most relevant experiences from the candidate for this vacancy in a short compact sentence. Add these as a bullet list >
|
125 |
+
Skills: print here a comma seperated list of the "skills_present" key of the JSON object {resume_skills}
|
126 |
+
"""
|
127 |
+
|
128 |
+
prompt_introduction_email = ChatPromptTemplate.from_template(template=template_introduction_email)
|
129 |
+
introduction_email = LLMChain(llm=llm, prompt=prompt_introduction_email, output_key="introduction_email")
|
130 |
+
|
131 |
+
match_resume_vacancy_skills_chain = SequentialChain(
|
132 |
+
chains=[vacancy_skills, resume_skills, introduction_email],
|
133 |
+
input_variables=["vacancy", "resume"],
|
134 |
+
output_variables=["vacancy_skills", "resume_skills", "introduction_email"],
|
135 |
+
verbose=False
|
136 |
+
)
|
137 |
+
|
138 |
+
result = match_resume_vacancy_skills_chain({"vacancy": vacancy, "resume": resume})
|
139 |
+
print(result)
|
140 |
+
return result["introduction_email"], json.dumps(json.loads(result['resume_skills']), indent=4)
|
141 |
+
|
142 |
+
if __name__ == '__main__':
|
143 |
+
create_intro(vacancy=vacancy,resume=resume)
|
requirements.txt
CHANGED
@@ -1,48 +1,58 @@
|
|
1 |
-i https://pypi.org/simple
|
2 |
aiofiles==23.1.0 ; python_version >= '3.7' and python_version < '4.0'
|
3 |
-
aiohttp==3.8.
|
4 |
aiosignal==1.3.1 ; python_version >= '3.7'
|
5 |
altair==5.0.1 ; python_version >= '3.7'
|
6 |
annotated-types==0.5.0 ; python_version >= '3.7'
|
7 |
anyio==3.7.1 ; python_version >= '3.7'
|
8 |
-
async-timeout==4.0.2 ; python_version
|
9 |
attrs==23.1.0 ; python_version >= '3.7'
|
10 |
certifi==2023.5.7 ; python_version >= '3.6'
|
11 |
charset-normalizer==3.2.0 ; python_full_version >= '3.7.0'
|
12 |
click==8.1.6 ; python_version >= '3.7'
|
13 |
contourpy==1.1.0 ; python_version >= '3.8'
|
14 |
cycler==0.11.0 ; python_version >= '3.6'
|
|
|
|
|
15 |
fastapi==0.100.0 ; python_version >= '3.7'
|
16 |
ffmpy==0.3.1
|
17 |
filelock==3.12.2 ; python_version >= '3.7'
|
18 |
fonttools==4.41.0 ; python_version >= '3.8'
|
19 |
frozenlist==1.4.0 ; python_version >= '3.8'
|
20 |
fsspec==2023.6.0 ; python_version >= '3.8'
|
21 |
-
gradio==3.
|
22 |
-
gradio-client==0.
|
23 |
h11==0.14.0 ; python_version >= '3.7'
|
24 |
httpcore==0.17.3 ; python_version >= '3.7'
|
25 |
httpx==0.24.1 ; python_version >= '3.7'
|
26 |
huggingface-hub==0.16.4 ; python_full_version >= '3.7.0'
|
27 |
idna==3.4 ; python_version >= '3.5'
|
|
|
28 |
jinja2==3.1.2 ; python_version >= '3.7'
|
29 |
jsonschema==4.18.4 ; python_version >= '3.8'
|
30 |
jsonschema-specifications==2023.7.1 ; python_version >= '3.8'
|
31 |
kiwisolver==1.4.4 ; python_version >= '3.7'
|
|
|
|
|
32 |
linkify-it-py==2.0.2
|
33 |
markdown-it-py[linkify]==2.2.0 ; python_version >= '3.7'
|
34 |
markupsafe==2.1.3 ; python_version >= '3.7'
|
|
|
35 |
matplotlib==3.7.2 ; python_version >= '3.8'
|
36 |
mdit-py-plugins==0.3.3 ; python_version >= '3.7'
|
37 |
mdurl==0.1.2 ; python_version >= '3.7'
|
38 |
multidict==6.0.4 ; python_version >= '3.7'
|
39 |
-
|
|
|
|
|
40 |
openai==0.27.8
|
|
|
41 |
orjson==3.9.2 ; python_version >= '3.7'
|
42 |
packaging==23.1 ; python_version >= '3.7'
|
43 |
pandas==2.0.3 ; python_version >= '3.8'
|
44 |
pillow==10.0.0 ; python_version >= '3.8'
|
45 |
-
|
|
|
46 |
pydantic-core==2.3.0 ; python_version >= '3.7'
|
47 |
pydub==0.25.1
|
48 |
pygments==2.15.1 ; python_version >= '3.7'
|
@@ -57,13 +67,17 @@ rpds-py==0.9.2 ; python_version >= '3.8'
|
|
57 |
semantic-version==2.10.0 ; python_version >= '2.7'
|
58 |
six==1.16.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
59 |
sniffio==1.3.0 ; python_version >= '3.7'
|
|
|
60 |
starlette==0.27.0 ; python_version >= '3.7'
|
|
|
61 |
toolz==0.12.0 ; python_version >= '3.5'
|
62 |
tqdm==4.65.0 ; python_version >= '3.7'
|
63 |
typing-extensions==4.7.1 ; python_version >= '3.7'
|
|
|
64 |
tzdata==2023.3 ; python_version >= '2'
|
65 |
uc-micro-py==1.0.2 ; python_version >= '3.7'
|
66 |
-
urllib3==2.0.
|
67 |
-
uvicorn==0.23.
|
68 |
websockets==11.0.3 ; python_version >= '3.7'
|
69 |
yarl==1.9.2 ; python_version >= '3.7'
|
|
|
|
1 |
-i https://pypi.org/simple
|
2 |
aiofiles==23.1.0 ; python_version >= '3.7' and python_version < '4.0'
|
3 |
+
aiohttp==3.8.5 ; python_version >= '3.6'
|
4 |
aiosignal==1.3.1 ; python_version >= '3.7'
|
5 |
altair==5.0.1 ; python_version >= '3.7'
|
6 |
annotated-types==0.5.0 ; python_version >= '3.7'
|
7 |
anyio==3.7.1 ; python_version >= '3.7'
|
8 |
+
async-timeout==4.0.2 ; python_version < '3.11'
|
9 |
attrs==23.1.0 ; python_version >= '3.7'
|
10 |
certifi==2023.5.7 ; python_version >= '3.6'
|
11 |
charset-normalizer==3.2.0 ; python_full_version >= '3.7.0'
|
12 |
click==8.1.6 ; python_version >= '3.7'
|
13 |
contourpy==1.1.0 ; python_version >= '3.8'
|
14 |
cycler==0.11.0 ; python_version >= '3.6'
|
15 |
+
dataclasses-json==0.5.13 ; python_version < '3.12' and python_version >= '3.7'
|
16 |
+
exceptiongroup==1.1.2 ; python_version < '3.11'
|
17 |
fastapi==0.100.0 ; python_version >= '3.7'
|
18 |
ffmpy==0.3.1
|
19 |
filelock==3.12.2 ; python_version >= '3.7'
|
20 |
fonttools==4.41.0 ; python_version >= '3.8'
|
21 |
frozenlist==1.4.0 ; python_version >= '3.8'
|
22 |
fsspec==2023.6.0 ; python_version >= '3.8'
|
23 |
+
gradio==3.38.0
|
24 |
+
gradio-client==0.2.10 ; python_version >= '3.8'
|
25 |
h11==0.14.0 ; python_version >= '3.7'
|
26 |
httpcore==0.17.3 ; python_version >= '3.7'
|
27 |
httpx==0.24.1 ; python_version >= '3.7'
|
28 |
huggingface-hub==0.16.4 ; python_full_version >= '3.7.0'
|
29 |
idna==3.4 ; python_version >= '3.5'
|
30 |
+
importlib-resources==6.0.0 ; python_version < '3.10'
|
31 |
jinja2==3.1.2 ; python_version >= '3.7'
|
32 |
jsonschema==4.18.4 ; python_version >= '3.8'
|
33 |
jsonschema-specifications==2023.7.1 ; python_version >= '3.8'
|
34 |
kiwisolver==1.4.4 ; python_version >= '3.7'
|
35 |
+
langchain==0.0.238
|
36 |
+
langsmith==0.0.12 ; python_version < '4.0' and python_full_version >= '3.8.1'
|
37 |
linkify-it-py==2.0.2
|
38 |
markdown-it-py[linkify]==2.2.0 ; python_version >= '3.7'
|
39 |
markupsafe==2.1.3 ; python_version >= '3.7'
|
40 |
+
marshmallow==3.20.1 ; python_version >= '3.8'
|
41 |
matplotlib==3.7.2 ; python_version >= '3.8'
|
42 |
mdit-py-plugins==0.3.3 ; python_version >= '3.7'
|
43 |
mdurl==0.1.2 ; python_version >= '3.7'
|
44 |
multidict==6.0.4 ; python_version >= '3.7'
|
45 |
+
mypy-extensions==1.0.0 ; python_version >= '3.5'
|
46 |
+
numexpr==2.8.4 ; python_version >= '3.7'
|
47 |
+
numpy==1.24.4 ; python_version >= '3.8'
|
48 |
openai==0.27.8
|
49 |
+
openapi-schema-pydantic==1.2.4 ; python_full_version >= '3.6.1'
|
50 |
orjson==3.9.2 ; python_version >= '3.7'
|
51 |
packaging==23.1 ; python_version >= '3.7'
|
52 |
pandas==2.0.3 ; python_version >= '3.8'
|
53 |
pillow==10.0.0 ; python_version >= '3.8'
|
54 |
+
pkgutil-resolve-name==1.3.10 ; python_version < '3.9'
|
55 |
+
pydantic==1.10.11 ; python_version >= '3.7'
|
56 |
pydantic-core==2.3.0 ; python_version >= '3.7'
|
57 |
pydub==0.25.1
|
58 |
pygments==2.15.1 ; python_version >= '3.7'
|
|
|
67 |
semantic-version==2.10.0 ; python_version >= '2.7'
|
68 |
six==1.16.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
69 |
sniffio==1.3.0 ; python_version >= '3.7'
|
70 |
+
sqlalchemy==2.0.19 ; python_version >= '3.7'
|
71 |
starlette==0.27.0 ; python_version >= '3.7'
|
72 |
+
tenacity==8.2.2 ; python_version >= '3.6'
|
73 |
toolz==0.12.0 ; python_version >= '3.5'
|
74 |
tqdm==4.65.0 ; python_version >= '3.7'
|
75 |
typing-extensions==4.7.1 ; python_version >= '3.7'
|
76 |
+
typing-inspect==0.9.0
|
77 |
tzdata==2023.3 ; python_version >= '2'
|
78 |
uc-micro-py==1.0.2 ; python_version >= '3.7'
|
79 |
+
urllib3==2.0.4 ; python_version >= '3.7'
|
80 |
+
uvicorn==0.23.1 ; python_version >= '3.8'
|
81 |
websockets==11.0.3 ; python_version >= '3.7'
|
82 |
yarl==1.9.2 ; python_version >= '3.7'
|
83 |
+
zipp==3.16.2 ; python_version < '3.10'
|