기준 커밋:
83319b44c
vLLM은 --convert <type> 옵션을 통해 기존 Text Generation 모델(예: *ForCausalLM)을 Pooling 모델(Embedding, Classification, Reward)로 변환하는 기능을 제공합니다. 이는 Adapter 패턴을 사용하여 원본 모델 코드 수정 없이 동적으로 클래스를 확장합니다.
기준 커밋:
83319b44c
vLLM은 --convert <type> 옵션을 통해 기존 Text Generation 모델(예: *ForCausalLM)을 Pooling 모델(Embedding, Classification, Reward)로 변환하는 기능을 제공합니다. 이는 Adapter 패턴을 사용하여 원본 모델 코드 수정 없이 동적으로 클래스를 확장합니다.
| {{- bos_token }} | |
| {%- if custom_tools is defined %} | |
| {%- set tools = custom_tools %} | |
| {%- endif %} | |
| {%- if not tools_in_user_message is defined %} | |
| {%- set tools_in_user_message = true %} | |
| {%- endif %} | |
| {%- if not date_string is defined %} | |
| {%- set date_string = "26 Jul 2024" %} | |
| {%- endif %} |
| int sel_le_long_long_col_col(int vec_num, int [] res_sel_vec, | |
| long [] col1, long [] col2, int [] sel_vec) { | |
| int ret = 0; | |
| if (sel_vec == null) { | |
| for (int i = 0; i < vec_num; i++) { | |
| if (col1[i] < col2[i]) { | |
| res_sel_vec[ret++] = i | |
| } | |
| } | |
| } else { |
| map_add_long_int_col_col(int vec_num, long [] result, long [] col1, | |
| int [] col2, int [] sel_vec) { | |
| if (sel_vec == null) { | |
| for (int i = 0; i = 0; i < vec_num; i++) { | |
| result[i] = col1[i] + col2[i]; | |
| } | |
| } else { | |
| int sel_idx; | |
| for (int i = 0; I = 0; i < vec_num; i++) { | |
| sel_idx = sel_vec[i]; |
| for (i = 0; i < 128; i+=4) { | |
| a[i] = b[i] + c[i]; | |
| a[i+1] = b[i+1] + c[i+1]; | |
| a[i+2] = b[i+2] + c[i+2]; | |
| a[i+3] = b[i+3] + c[i+3]; | |
| } |
| for (i = 0; i < 128; i++) { | |
| a[i] = b[i] + c[i]; | |
| } |
| int uselect_bt_void_int_bat_int_const(oid *output, int *input, int value, int size) { | |
| oid i; | |
| int j = 0; | |
| for (i = 0; i < size; i++) { | |
| if (input[i] > value) { | |
| output[j++] = i; | |
| } | |
| } | |
| return j; | |
| } |
| select | |
| l_returnflag, l_linestatus, sum(l_quantity) as sum_qty, | |
| sum(l_extendedprice) as sum_base_price, | |
| sum(l_extendedprice*(1-l_discount)) as sum_disc_price, | |
| sum(l_extendedprice*(1-l_discount)*(1+l_tax)) as sum_charge, | |
| avg(l_quantity) as avg_qty, | |
| avg(l_extendedprice) as avg_price, avg(l_discount) as avg_disc, | |
| count(*) as count_order | |
| from | |
| lineitem |
| Latency Comparison Numbers | |
| -------------------------- | |
| execute typical instruction 1 ns 1/1,000,000,000 sec | |
| L1 cache reference 0.5 ns | |
| Branch mispredict 5 ns | |
| L2 cache reference 7 ns 14x L1 cache | |
| Mutex lock/unlock 25 ns | |
| Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
| Compress 1K bytes with Zippy 3,000 ns | |
| Send 1K bytes over 1 Gbps network 10,000 ns |
| public abstract class ColumnVector { | |
| public boolean[] isNull; | |
| public boolean noNulls; | |
| public boolean isRepeating; | |
| ... | |
| } | |
| public class LongColumnVector extends ColumnVector { | |
| public long[] vector; | |
| public static final long NULL_VALUE = 1; |