-
Notifications
You must be signed in to change notification settings - Fork 20
/
project.yaml
131 lines (131 loc) · 13.7 KB
/
project.yaml
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
kind: project
metadata:
name: mlopspedia-bot-yonis
spec:
params:
source: git://github.com/mlrun/demo-llm-tuning.git#main
default_image: yonishelach/mlrun-llm
functions:
- url: src/data_collection.py
name: data-collecting
kind: job
image: mlrun/mlrun
- url: src/data_preprocess.py
name: data-preparing
kind: job
- url: src/trainer.py
name: training
kind: job
- name: serving
spec:
kind: serving
metadata:
name: serving
project: mlopspedia-bot-yonis
spec:
command: ''
args: []
image: yonishelach/mlrun-llm
build:
functionSourceCode: aW1wb3J0IGpzb24KaW1wb3J0IG9zCmltcG9ydCB6aXBmaWxlCmZyb20gdHlwaW5nIGltcG9ydCBBbnksIERpY3QKCmltcG9ydCBldmFsdWF0ZQppbXBvcnQgbWxydW4uYXJ0aWZhY3RzCmltcG9ydCBudW1weSBhcyBucAppbXBvcnQgdG9yY2gKaW1wb3J0IHRyYW5zZm9ybWVycwpmcm9tIG1scnVuLnNlcnZpbmcudjJfc2VydmluZyBpbXBvcnQgVjJNb2RlbFNlcnZlcgpmcm9tIHBlZnQgaW1wb3J0IFBlZnRNb2RlbAoKU1VCSkVDVF9NQVJLID0gIiMjIyBIdW1hbjogIgpDT05URU5UX01BUksgPSAiXG4jIyMgQXNzaXN0YW50OiAiClBST01QVF9GT1JNQVQgPSBTVUJKRUNUX01BUksgKyAie30iICsgQ09OVEVOVF9NQVJLCgoKZGVmIHByZXByb2Nlc3MocmVxdWVzdDogZGljdCkgLT4gZGljdDoKICAgICIiIgogICAgY29udmVydCB0aGUgcmVxdWVzdCB0byB0aGUgcmVxdWlyZWQgc3RydWN0dXJlIGZvciB0aGUgcHJlZGljdCBmdW5jdGlvbgoKICAgIDpwYXJhbSByZXF1ZXN0OiBBIGh0dHAgcmVxdWVzdCB0aGF0IGNvbnRhaW5zIHRoZSBwcm9tcHQKICAgICIiIgogICAgIyBSZWFkIGJ5dGVzOgogICAgaWYgaXNpbnN0YW5jZShyZXF1ZXN0LCBieXRlcyk6CiAgICAgICAgcmVxdWVzdCA9IGpzb24ubG9hZHMocmVxdWVzdCkKCiAgICAjIEdldCB0aGUgcHJvbXB0OgogICAgcHJvbXB0ID0gcmVxdWVzdC5wb3AoInByb21wdCIpCgogICAgIyBGb3JtYXQgdGhlIHByb21wdCBhcyBzdWJqZWN0OgogICAgcHJvbXB0ID0gUFJPTVBUX0ZPUk1BVC5mb3JtYXQoc3RyKHByb21wdCkpCgogICAgIyBVcGRhdGUgdGhlIHJlcXVlc3QgYW5kIHJldHVybjoKICAgIHJlcXVlc3QgPSB7ImlucHV0cyI6IFt7InByb21wdCI6IFtwcm9tcHRdLCAqKnJlcXVlc3R9XX0KICAgIHJldHVybiByZXF1ZXN0CgoKY2xhc3MgTExNTW9kZWxTZXJ2ZXIoVjJNb2RlbFNlcnZlcik6CiAgICAiIiIKICAgIFRoaXMgaXMgdGVtcG9yYXJ5IGFuZCB3aWxsIGJlIGJ1aWx0IGluIG1scnVuIDEuNS4wCiAgICAiIiIKCiAgICBkZWYgX19pbml0X18oCiAgICAgICAgc2VsZiwKICAgICAgICBjb250ZXh0OiBtbHJ1bi5NTENsaWVudEN0eCA9IE5vbmUsCiAgICAgICAgbmFtZTogc3RyID0gTm9uZSwKICAgICAgICBtb2RlbF9jbGFzczogc3RyID0gIkF1dG9Nb2RlbEZvckNhdXNhbExNIiwKICAgICAgICB0b2tlbml6ZXJfY2xhc3M6IHN0ciA9ICJBdXRvVG9rZW5pemVyIiwKICAgICAgICAjIG1vZGVsIGFyZ3M6CiAgICAgICAgbW9kZWxfYXJnczogZGljdCA9IE5vbmUsCiAgICAgICAgIyBMb2FkIGZyb20gTUxSdW4gYXJnczoKICAgICAgICBtb2RlbF9wYXRoOiBzdHIgPSBOb25lLAogICAgICAgICMgTG9hZCBmcm9tIGh1YiBhcmdzOgogICAgICAgIG1vZGVsX25hbWU6IHN0ciA9IE5vbmUsCiAgICAgICAgdG9rZW5pemVyX25hbWU6IHN0ciA9IE5vbmUsCiAgICAgICAgIyBEZWVwc3BlZWQgYXJnczoKICAgICAgICB1c2VfZGVlcHNwZWVkOiBib29sID0gRmFsc2UsCiAgICAgICAgbl9ncHVzOiBpbnQgPSAxLAogICAgICAgIGlzX2ZwMTY6IGJvb2wgPSBUcnVlLAogICAgICAgICMgcGVmdCBtb2RlbDoKICAgICAgICBwZWZ0X21vZGVsOiBzdHIgPSBOb25lLAogICAgICAgICMgSW5mZXJlbmNlIGFyZ3M6CiAgICAgICAgKipjbGFzc19hcmdzLAogICAgKToKICAgICAgICAjIEluaXRpYWxpemUgdGhlIGJhc2Ugc2VydmVyOgogICAgICAgIHN1cGVyKExMTU1vZGVsU2VydmVyLCBzZWxmKS5fX2luaXRfXygKICAgICAgICAgICAgY29udGV4dD1jb250ZXh0LAogICAgICAgICAgICBuYW1lPW5hbWUsCiAgICAgICAgICAgIG1vZGVsX3BhdGg9bW9kZWxfcGF0aCwKICAgICAgICAgICAgKipjbGFzc19hcmdzLAogICAgICAgICkKCiAgICAgICAgIyBTYXZlIGNsYXNzIG5hbWVzOgogICAgICAgIHNlbGYubW9kZWxfY2xhc3MgPSBtb2RlbF9jbGFzcwogICAgICAgIHNlbGYudG9rZW5pemVyX2NsYXNzID0gdG9rZW5pemVyX2NsYXNzCgogICAgICAgICMgU2F2ZSBodWIgbG9hZGluZyBwYXJhbWV0ZXJzOgogICAgICAgIHNlbGYubW9kZWxfbmFtZSA9IG1vZGVsX25hbWUKICAgICAgICBzZWxmLnRva2VuaXplcl9uYW1lID0gdG9rZW5pemVyX25hbWUgb3Igc2VsZi5tb2RlbF9uYW1lCgogICAgICAgICMgU2F2ZSBsb2FkIG1vZGVsIGFyZ3VtZW50czoKICAgICAgICBzZWxmLm1vZGVsX2FyZ3MgPSBtb2RlbF9hcmdzCgogICAgICAgICMgU2F2ZSBkZWVwc3BlZWQgcGFyYW1ldGVyczoKICAgICAgICBzZWxmLnVzZV9kZWVwc3BlZWQgPSB1c2VfZGVlcHNwZWVkCiAgICAgICAgc2VsZi5uX2dwdXMgPSBuX2dwdXMKICAgICAgICBzZWxmLmlzX2ZwMTYgPSBpc19mcDE2CgogICAgICAgICMgUEVGVCBwYXJhbWV0ZXJzOgogICAgICAgIHNlbGYucGVmdF9tb2RlbCA9IHBlZnRfbW9kZWwKCiAgICAgICAgIyBQcmVwYXJlIHZhcmlhYmxlcyBmb3IgZnV0dXJlIHVzZToKICAgICAgICBzZWxmLm1vZGVsID0gTm9uZQogICAgICAgIHNlbGYudG9rZW5pemVyID0gTm9uZQogICAgICAgIHNlbGYuX21vZGVsX2NsYXNzID0gTm9uZQogICAgICAgIHNlbGYuX3Rva2VuaXplcl9jbGFzcyA9IE5vbmUKCiAgICBkZWYgbG9hZChzZWxmKToKICAgICAgICAjIEdldCBjbGFzc2VzOgogICAgICAgIHNlbGYuX21vZGVsX2NsYXNzID0gZ2V0YXR0cih0cmFuc2Zvcm1lcnMsIHNlbGYubW9kZWxfY2xhc3MpCiAgICAgICAgc2VsZi5fdG9rZW5pemVyX2NsYXNzID0gZ2V0YXR0cih0cmFuc2Zvcm1lcnMsIHNlbGYudG9rZW5pemVyX2NsYXNzKQoKICAgICAgICAjIExvYWQgdGhlIG1vZGVsIGFuZCB0b2tlbml6ZXI6CiAgICAgICAgaWYgc2VsZi5tb2RlbF9wYXRoOgogICAgICAgICAgICBzZWxmLl9sb2FkX2Zyb21fbWxydW4oKQogICAgICAgIGVsc2U6CiAgICAgICAgICAgIHNlbGYuX2xvYWRfZnJvbV9odWIoKQoKICAgICAgICAjIFVzZSBkZWVwc3BlZWQgaWYgbmVlZGVkOgogICAgICAgIGlmIHNlbGYudXNlX2RlZXBzcGVlZDoKICAgICAgICAgICAgaW1wb3J0IGRlZXBzcGVlZAoKICAgICAgICAgICAgc2VsZi5tb2RlbCA9IGRlZXBzcGVlZC5pbml0X2luZmVyZW5jZSgKICAgICAgICAgICAgICAgIG1vZGVsPXNlbGYubW9kZWwsCiAgICAgICAgICAgICAgICBtcF9zaXplPXNlbGYubl9ncHVzLAogICAgICAgICAgICAgICAgZHR5cGU9dG9yY2guZmxvYXQxNiBpZiBzZWxmLmlzX2ZwMTYgZWxzZSB0b3JjaC5mbG9hdDMyLAogICAgICAgICAgICAgICAgcmVwbGFjZV9tZXRob2Q9ImF1dG8iLAogICAgICAgICAgICAgICAgcmVwbGFjZV93aXRoX2tlcm5lbF9pbmplY3Q9VHJ1ZSwKICAgICAgICAgICAgKQogICAgICAgIGlmIHNlbGYucGVmdF9tb2RlbDoKICAgICAgICAgICAgc2VsZi5fbG9hZF9wZWZ0X21vZGVsKCkKCiAgICBkZWYgX2V4dHJhY3RfbW9kZWwoc2VsZiwgdXJsKToKICAgICAgICAjIEdldCB0aGUgbW9kZWwgYXJ0aWZhY3QgYW5kIGZpbGU6CiAgICAgICAgKAogICAgICAgICAgICBtb2RlbF9maWxlLAogICAgICAgICAgICBtb2RlbF9hcnRpZmFjdCwKICAgICAgICAgICAgZXh0cmFfZGF0YSwKICAgICAgICApID0gbWxydW4uYXJ0aWZhY3RzLmdldF9tb2RlbCh1cmwpCgogICAgICAgICMgUmVhZCB0aGUgbmFtZToKICAgICAgICBtb2RlbF9uYW1lID0gbW9kZWxfYXJ0aWZhY3Quc3BlYy5kYl9rZXkKCiAgICAgICAgIyBFeHRyYWN0IGxvZ2dlZCBtb2RlbCBmaWxlczoKICAgICAgICBtb2RlbF9kaXJlY3RvcnkgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKG1vZGVsX2ZpbGUpLCBtb2RlbF9uYW1lKQogICAgICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKG1vZGVsX2ZpbGUsICJyIikgYXMgemlwX2ZpbGU6CiAgICAgICAgICAgIHppcF9maWxlLmV4dHJhY3RhbGwobW9kZWxfZGlyZWN0b3J5KQogICAgICAgIHJldHVybiBtb2RlbF9kaXJlY3RvcnkKCiAgICBkZWYgX2xvYWRfcGVmdF9tb2RlbChzZWxmKToKICAgICAgICBtb2RlbF9kaXJlY3RvcnkgPSBzZWxmLl9leHRyYWN0X21vZGVsKHNlbGYucGVmdF9tb2RlbCkKICAgICAgICBzZWxmLm1vZGVsID0gUGVmdE1vZGVsLmZyb21fcHJldHJhaW5lZChzZWxmLm1vZGVsLCBtb2RlbF9kaXJlY3RvcnkpCiAgICAgICAgc2VsZi5tb2RlbC5ldmFsKCkKCiAgICBkZWYgX2xvYWRfZnJvbV9tbHJ1bihzZWxmKToKICAgICAgICBtb2RlbF9kaXJlY3RvcnkgPSBzZWxmLl9leHRyYWN0X21vZGVsKHNlbGYubW9kZWxfcGF0aCkKCiAgICAgICAgIyBMb2FkaW5nIHRoZSBzYXZlZCBwcmV0cmFpbmVkIHRva2VuaXplciBhbmQgbW9kZWw6CiAgICAgICAgc2VsZi50b2tlbml6ZXIgPSBzZWxmLl90b2tlbml6ZXJfY2xhc3MuZnJvbV9wcmV0cmFpbmVkKG1vZGVsX2RpcmVjdG9yeSkKICAgICAgICBzZWxmLm1vZGVsID0gc2VsZi5fbW9kZWxfY2xhc3MuZnJvbV9wcmV0cmFpbmVkKAogICAgICAgICAgICBtb2RlbF9kaXJlY3RvcnksICoqc2VsZi5tb2RlbF9hcmdzCiAgICAgICAgKQoKICAgIGRlZiBfbG9hZF9mcm9tX2h1YihzZWxmKToKICAgICAgICAjIExvYWRpbmcgdGhlIHByZXRyYWluZWQgdG9rZW5pemVyIGFuZCBtb2RlbDoKICAgICAgICBzZWxmLnRva2VuaXplciA9IHNlbGYuX3Rva2VuaXplcl9jbGFzcy5mcm9tX3ByZXRyYWluZWQoCiAgICAgICAgICAgIHNlbGYudG9rZW5pemVyX25hbWUsCiAgICAgICAgICAgIG1vZGVsX21heF9sZW5ndGg9NTEyLAogICAgICAgICkKICAgICAgICBzZWxmLm1vZGVsID0gc2VsZi5fbW9kZWxfY2xhc3MuZnJvbV9wcmV0cmFpbmVkKAogICAgICAgICAgICBzZWxmLm1vZGVsX25hbWUsICoqc2VsZi5tb2RlbF9hcmdzCiAgICAgICAgKQoKICAgIGRlZiBwcmVkaWN0KHNlbGYsIHJlcXVlc3Q6IERpY3Rbc3RyLCBBbnldKSAtPiBkaWN0OgogICAgICAgICMgR2V0IHRoZSBpbnB1dHM6CiAgICAgICAga3dhcmdzID0gcmVxdWVzdFsiaW5wdXRzIl1bMF0KICAgICAgICBwcm9tcHQgPSBrd2FyZ3MucG9wKCJwcm9tcHQiKVswXQoKICAgICAgICAjIFRva2VuaXplOgogICAgICAgIGlucHV0cyA9IHNlbGYudG9rZW5pemVyKHByb21wdCwgcmV0dXJuX3RlbnNvcnM9InB0IilbImlucHV0X2lkcyJdCiAgICAgICAgaWYgc2VsZi5tb2RlbC5kZXZpY2UudHlwZSA9PSAiY3VkYSI6CiAgICAgICAgICAgIGlucHV0cyA9IGlucHV0cy5jdWRhKCkKCiAgICAgICAgIyBHZXQgdGhlIHBhZCB0b2tlbiBpZDoKICAgICAgICBwYWRfdG9rZW5faWQgPSBzZWxmLnRva2VuaXplci5lb3NfdG9rZW5faWQKCiAgICAgICAgIyBJbmZlciB0aHJvdWdoIHRoZSBtb2RlbDoKICAgICAgICBvdXRwdXQgPSBzZWxmLm1vZGVsLmdlbmVyYXRlKAogICAgICAgICAgICBpbnB1dF9pZHM9aW5wdXRzLAogICAgICAgICAgICBkb19zYW1wbGU9VHJ1ZSwKICAgICAgICAgICAgbnVtX3JldHVybl9zZXF1ZW5jZXM9MSwKICAgICAgICAgICAgcGFkX3Rva2VuX2lkPXBhZF90b2tlbl9pZCwKICAgICAgICAgICAgKiprd2FyZ3MsCiAgICAgICAgKQoKICAgICAgICAjIERldG9rZW5pemU6CiAgICAgICAgcHJlZGljdGlvbiA9IHNlbGYudG9rZW5pemVyLmRlY29kZShvdXRwdXRbMF0sIHNraXBfc3BlY2lhbF90b2tlbnM9VHJ1ZSkKCiAgICAgICAgcmV0dXJuIHsicHJlZGljdGlvbiI6IHByZWRpY3Rpb24sICJwcm9tcHQiOiBwcm9tcHR9CgogICAgZGVmIGV4cGxhaW4oc2VsZiwgcmVxdWVzdDogRGljdCkgLT4gc3RyOgogICAgICAgIHJldHVybiBmIkxMTSBtb2RlbCBzZXJ2ZXIgbmFtZWQge3NlbGYubmFtZX0iCgoKZGVmIHBvc3Rwcm9jZXNzKGlucHV0czogZGljdCkgLT4gZGljdDoKICAgICIiIgogICAgUG9zdHByb2Nlc3NpbmcgdGhlIGdlbmVyYXRlZCBvdXRwdXQgb2YgdGhlIG1vZGVsCiAgICAiIiIKICAgICMgUmVhZCB0aGUgcHJlZGljdGlvbjoKICAgIHByZWRpY3Rpb24gPSBpbnB1dHNbIm91dHB1dHMiXVsicHJlZGljdGlvbiJdCgogICAgIyBMb29rIGZvciBhICdDb250ZW50OiAnIG1hcmsgdG8ga25vdyB0aGUgbW9kZWwgZm91bmQgdGhlIHN1YmplY3QsIG90aGVyd2lzZSwgaXQgaXMgcHJvYmFibHkgZ2FyYmFnZToKICAgIGNvbnRlbnRfaW5kZXggPSBwcmVkaWN0aW9uLmZpbmQoQ09OVEVOVF9NQVJLKQogICAgaWYgY29udGVudF9pbmRleCA9PSAtMToKICAgICAgICBvdXRwdXQgPSBmIkknbSBub3Qgc3VyZSBhYm91dCBpdCBidXQgSSdsbCBkbyBteSBiZXN0OiB7cHJlZGljdGlvbn0iCiAgICBlbHNlOgogICAgICAgIG91dHB1dCA9IHByZWRpY3Rpb25bY29udGVudF9pbmRleCArIGxlbihDT05URU5UX01BUkspIDpdCgogICAgcmV0dXJuIHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7InByZWRpY3Rpb24iOiBvdXRwdXQuc3RyaXAoKSwgInByb21wdCI6IGlucHV0c1sib3V0cHV0cyJdWyJwcm9tcHQiXX0KICAgICAgICBdCiAgICB9CgoKY2xhc3MgVG94aWNpdHlDbGFzc2lmaWVyTW9kZWxTZXJ2ZXIoVjJNb2RlbFNlcnZlcik6CiAgICAiIiIKICAgIG1vZGVsIHRoYXQgY2hlY2tzIGlmIHRoZSB0ZXh0IGNvbnRhaW4gdG94aWNpdHkgbGFuZ3VhZ2UuCiAgICAiIiIKCiAgICBkZWYgX19pbml0X18oc2VsZiwgY29udGV4dCwgbmFtZTogc3RyLCB0aHJlc2hvbGQ6IGZsb2F0ID0gMC43LCAqKmNsYXNzX2FyZ3MpOgogICAgICAgICMgSW5pdGlhbGl6ZSB0aGUgYmFzZSBzZXJ2ZXI6CiAgICAgICAgc3VwZXIoVG94aWNpdHlDbGFzc2lmaWVyTW9kZWxTZXJ2ZXIsIHNlbGYpLl9faW5pdF9fKAogICAgICAgICAgICBjb250ZXh0PWNvbnRleHQsCiAgICAgICAgICAgIG5hbWU9bmFtZSwKICAgICAgICAgICAgbW9kZWxfcGF0aD1Ob25lLAogICAgICAgICAgICAqKmNsYXNzX2FyZ3MsCiAgICAgICAgKQoKICAgICAgICAjIFN0b3JlIHRoZSB0aHJlc2hvbGQgb2YgdG94aWNpdHk6CiAgICAgICAgc2VsZi50aHJlc2hvbGQgPSB0aHJlc2hvbGQKCiAgICBkZWYgbG9hZChzZWxmKToKICAgICAgICBzZWxmLm1vZGVsID0gZXZhbHVhdGUubG9hZCgidG94aWNpdHkiLCBtb2R1bGVfdHlwZT0ibWVhc3VyZW1lbnQiKQoKICAgIGRlZiBwcmVkaWN0KHNlbGYsIGlucHV0czogRGljdCkgLT4gc3RyOgogICAgICAgICMgUmVhZCB0aGUgdXNlcidzIGlucHV0IGFuZCBtb2RlbCBvdXRwdXQ6CiAgICAgICAgcHJlZGljdGlvbiA9IGlucHV0c1siaW5wdXRzIl1bMF1bInByZWRpY3Rpb24iXQogICAgICAgIHByb21wdCA9IGlucHV0c1siaW5wdXRzIl1bMF1bInByb21wdCJdCgogICAgICAgICMgSW5mZXIgdGhyb3VnaCB0aGUgZXZhbHVhdG9yIG1vZGVsOgogICAgICAgIHJlc3VsdCA9IHNlbGYubW9kZWwuY29tcHV0ZShwcmVkaWN0aW9ucz1bcHJlZGljdGlvbiwgcHJvbXB0XSlbInRveGljaXR5Il0KICAgICAgICBpZiBhbnkobnAuYXJyYXkocmVzdWx0KSA+IHNlbGYudGhyZXNob2xkKToKICAgICAgICAgICAgcmV0dXJuICJUaGlzIGJvdCBkbyBub3QgcmVzcG9uZCB0byB0b3hpY2l0eS4iCgogICAgICAgIHJldHVybiBwcmVkaWN0aW9uCgogICAgZGVmIGV4cGxhaW4oc2VsZiwgcmVxdWVzdDogRGljdCkgLT4gc3RyOgogICAgICAgIHJldHVybiBmIlRleHQgdG94aWNpdHkgY2xhc3NpZmllciBzZXJ2ZXIgbmFtZWQge3NlbGYubmFtZX0iCgpmcm9tIG1scnVuLnJ1bnRpbWVzIGltcG9ydCBudWNsaW9faW5pdF9ob29rCmRlZiBpbml0X2NvbnRleHQoY29udGV4dCk6CiAgICBudWNsaW9faW5pdF9ob29rKGNvbnRleHQsIGdsb2JhbHMoKSwgJ3NlcnZpbmdfdjInKQoKZGVmIGhhbmRsZXIoY29udGV4dCwgZXZlbnQpOgogICAgcmV0dXJuIGNvbnRleHQubWxydW5faGFuZGxlcihjb250ZXh0LCBldmVudCkK
source: ./
commands: []
code_origin: http://github.com/mlrun/demo-llm-tuning#refs/heads/main#91145f96f3cd627431de34d0bae3547efbdd7097
origin_filename: src/serving.py
requirements: []
description: ''
default_handler: ''
disable_auto_mount: false
clone_target_dir: ''
env:
- name: V3IO_API
value: ''
- name: V3IO_USERNAME
value: ''
- name: V3IO_ACCESS_KEY
value: ''
- name: V3IO_FRAMESD
value: ''
resources:
requests:
memory: 1Mi
cpu: 25m
limits:
nvidia.com/gpu: 1
priority_class_name: igz-workload-medium
preemption_mode: prevent
min_replicas: 1
max_replicas: 4
source: ''
function_kind: serving_v2
readiness_timeout: 3000
function_handler: serving:handler
base_image_pull: false
graph:
steps:
preprocess:
kind: task
handler: preprocess
after: []
mlopspedia:
kind: task
class_name: LLMModelServer
class_args:
model_args:
load_in_8bit: true
device_map: cuda:0
trust_remote_code: true
tokenizer_name: tiiuae/falcon-7b
model_name: tiiuae/falcon-7b
peft_model: store://artifacts/mlopspedia-bot-yonis/falcon-7b-mlrun
after:
- preprocess
postprocess:
kind: task
handler: postprocess
after:
- mlopspedia
toxicity-classifier:
kind: task
class_name: ToxicityClassifierModelServer
class_args:
threshold: 0.7
after:
- postprocess
responder: true
engine: async
secret_sources: []
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: app.iguazio.com/lifecycle
operator: NotIn
values:
- preemptible
- key: eks.amazonaws.com/capacityType
operator: NotIn
values:
- SPOT
- key: node-lifecycle
operator: NotIn
values:
- spot
tolerations: null
security_context: {}
verbose: false
workflows:
- path: src/training_workflow.py
name: training_workflow
artifacts: []
conda: ''
source: git://github.com/mlrun/demo-llm-tuning.git#main
origin_url: http://github.com/mlrun/demo-llm-tuning#refs/heads/main
load_source_on_run: true
desired_state: online
default_image: yonishelach/mlrun-llm
build:
commands: []
requirements: []
custom_packagers: []