Thank you very much for your contradictory contributions, which have been very helpful to me. I have a question that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_ OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapes are [1, one 1128 and [1], 1, one 1128] Error, how can we solve it?

root@1d434e9d1113:/models/onnx# trtexec --onnx=./llm.onnx --saveEngine=./trt/model.plan --optShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128         --minShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128         --maxShapes=input_ids:128x1,attention_mask:1x1x128x128,position_ids:128x1,past_key_values:32x2x1x32x128x128
&&&& RUNNING TensorRT.trtexec [TensorRT v8601] # trtexec --onnx=./llm.onnx --saveEngine=./trt/model.plan --optShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128 --minShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128 --maxShapes=input_ids:128x1,attention_mask:1x1x128x128,position_ids:128x1,past_key_values:32x2x1x32x128x128
[09/27/2023-03:32:55] [I] === Model Options ===
[09/27/2023-03:32:55] [I] Format: ONNX
[09/27/2023-03:32:55] [I] Model: ./llm.onnx
[09/27/2023-03:32:55] [I] Output:
[09/27/2023-03:32:55] [I] === Build Options ===
[09/27/2023-03:32:55] [I] Max batch: explicit batch
[09/27/2023-03:32:55] [I] Memory Pools: workspace: default, dlaSRAM: default, dlaLocalDRAM: default, dlaGlobalDRAM: default
[09/27/2023-03:32:55] [I] minTiming: 1
[09/27/2023-03:32:55] [I] avgTiming: 8
[09/27/2023-03:32:55] [I] Precision: FP32
[09/27/2023-03:32:55] [I] LayerPrecisions:
[09/27/2023-03:32:55] [I] Layer Device Types:
[09/27/2023-03:32:55] [I] Calibration:
[09/27/2023-03:32:55] [I] Refit: Disabled
[09/27/2023-03:32:55] [I] Version Compatible: Disabled
[09/27/2023-03:32:55] [I] TensorRT runtime: full
[09/27/2023-03:32:55] [I] Lean DLL Path:
[09/27/2023-03:32:55] [I] Tempfile Controls: { in_memory: allow, temporary: allow }
[09/27/2023-03:32:55] [I] Exclude Lean Runtime: Disabled
[09/27/2023-03:32:55] [I] Sparsity: Disabled
[09/27/2023-03:32:55] [I] Safe mode: Disabled
[09/27/2023-03:32:55] [I] Build DLA standalone loadable: Disabled
[09/27/2023-03:32:55] [I] Allow GPU fallback for DLA: Disabled
[09/27/2023-03:32:55] [I] DirectIO mode: Disabled
[09/27/2023-03:32:55] [I] Restricted mode: Disabled
[09/27/2023-03:32:55] [I] Skip inference: Disabled
[09/27/2023-03:32:55] [I] Save engine: ./trt/model.plan
[09/27/2023-03:32:55] [I] Load engine:
[09/27/2023-03:32:55] [I] Profiling verbosity: 0
[09/27/2023-03:32:55] [I] Tactic sources: Using default tactic sources
[09/27/2023-03:32:55] [I] timingCacheMode: local
[09/27/2023-03:32:55] [I] timingCacheFile:
[09/27/2023-03:32:55] [I] Heuristic: Disabled
[09/27/2023-03:32:55] [I] Preview Features: Use default preview flags.
[09/27/2023-03:32:55] [I] MaxAuxStreams: -1
[09/27/2023-03:32:55] [I] BuilderOptimizationLevel: -1
[09/27/2023-03:32:55] [I] Input(s)s format: fp32:CHW
[09/27/2023-03:32:55] [I] Output(s)s format: fp32:CHW
[09/27/2023-03:32:55] [I] Input build shape: input_ids=1x1+1x1+128x1
[09/27/2023-03:32:55] [I] Input build shape: attention_mask=1x1x1x1+1x1x1x1+1x1x128x128
[09/27/2023-03:32:55] [I] Input build shape: position_ids=1x1+1x1+128x1
[09/27/2023-03:32:55] [I] Input build shape: past_key_values=32x2x1x32x1x128+32x2x1x32x1x128+32x2x1x32x128x128
[09/27/2023-03:32:55] [I] Input calibration shapes: model
[09/27/2023-03:32:55] [I] === System Options ===
[09/27/2023-03:32:55] [I] Device: 0
[09/27/2023-03:32:55] [I] DLACore:
[09/27/2023-03:32:55] [I] Plugins:
[09/27/2023-03:32:55] [I] setPluginsToSerialize:
[09/27/2023-03:32:55] [I] dynamicPlugins:
[09/27/2023-03:32:55] [I] ignoreParsedPluginLibs: 0
[09/27/2023-03:32:55] [I]
[09/27/2023-03:32:55] [I] === Inference Options ===
[09/27/2023-03:32:55] [I] Batch: Explicit
[09/27/2023-03:32:55] [I] Input inference shape: past_key_values=32x2x1x32x1x128
[09/27/2023-03:32:55] [I] Input inference shape: position_ids=1x1
[09/27/2023-03:32:55] [I] Input inference shape: attention_mask=1x1x1x1
[09/27/2023-03:32:55] [I] Input inference shape: input_ids=1x1
[09/27/2023-03:32:55] [I] Iterations: 10
[09/27/2023-03:32:55] [I] Duration: 3s (+ 200ms warm up)
[09/27/2023-03:32:55] [I] Sleep time: 0ms
[09/27/2023-03:32:55] [I] Idle time: 0ms
[09/27/2023-03:32:55] [I] Inference Streams: 1
[09/27/2023-03:32:55] [I] ExposeDMA: Disabled
[09/27/2023-03:32:55] [I] Data transfers: Enabled
[09/27/2023-03:32:55] [I] Spin-wait: Disabled
[09/27/2023-03:32:55] [I] Multithreading: Disabled
[09/27/2023-03:32:55] [I] CUDA Graph: Disabled
[09/27/2023-03:32:55] [I] Separate profiling: Disabled
[09/27/2023-03:32:55] [I] Time Deserialize: Disabled
[09/27/2023-03:32:55] [I] Time Refit: Disabled
[09/27/2023-03:32:55] [I] NVTX verbosity: 0
[09/27/2023-03:32:55] [I] Persistent Cache Ratio: 0
[09/27/2023-03:32:55] [I] Inputs:
[09/27/2023-03:32:55] [I] === Reporting Options ===
[09/27/2023-03:32:55] [I] Verbose: Disabled
[09/27/2023-03:32:55] [I] Averages: 10 inferences
[09/27/2023-03:32:55] [I] Percentiles: 90,95,99
[09/27/2023-03:32:55] [I] Dump refittable layers:Disabled
[09/27/2023-03:32:55] [I] Dump output: Disabled
[09/27/2023-03:32:55] [I] Profile: Disabled
[09/27/2023-03:32:55] [I] Export timing to JSON file:
[09/27/2023-03:32:55] [I] Export output to JSON file:
[09/27/2023-03:32:55] [I] Export profile to JSON file:
[09/27/2023-03:32:55] [I]
[09/27/2023-03:32:57] [I] === Device Information ===
[09/27/2023-03:32:57] [I] Selected Device: NVIDIA A100-SXM4-40GB
[09/27/2023-03:32:57] [I] Compute Capability: 8.0
[09/27/2023-03:32:57] [I] SMs: 108
[09/27/2023-03:32:57] [I] Device Global Memory: 40339 MiB
[09/27/2023-03:32:57] [I] Shared Memory per SM: 164 KiB
[09/27/2023-03:32:57] [I] Memory Bus Width: 5120 bits (ECC enabled)
[09/27/2023-03:32:57] [I] Application Compute Clock Rate: 1.41 GHz
[09/27/2023-03:32:57] [I] Application Memory Clock Rate: 1.215 GHz
[09/27/2023-03:32:57] [I]
[09/27/2023-03:32:57] [I] Note: The application clock rates do not reflect the actual clock rates that the GPU is currently running at.
[09/27/2023-03:32:57] [I]
[09/27/2023-03:32:57] [I] TensorRT version: 8.6.1
[09/27/2023-03:32:57] [I] Loading standard plugins
[09/27/2023-03:32:57] [I] [TRT] [MemUsageChange] Init CUDA: CPU +2, GPU +0, now: CPU 20, GPU 427 (MiB)
[09/27/2023-03:33:03] [I] [TRT] [MemUsageChange] Init builder kernel library: CPU +1657, GPU +310, now: CPU 1753, GPU 737 (MiB)
[09/27/2023-03:33:03] [I] Start parsing network model.
[09/27/2023-03:33:03] [I] [TRT] ----------------------------------------------------------------
[09/27/2023-03:33:03] [I] [TRT] Input filename:   ./llm.onnx
[09/27/2023-03:33:03] [I] [TRT] ONNX IR version:  0.0.8
[09/27/2023-03:33:03] [I] [TRT] Opset version:    15
[09/27/2023-03:33:03] [I] [TRT] Producer name:    pytorch
[09/27/2023-03:33:03] [I] [TRT] Producer version: 2.0.1
[09/27/2023-03:33:03] [I] [TRT] Domain:
[09/27/2023-03:33:03] [I] [TRT] Model version:    0
[09/27/2023-03:33:03] [I] [TRT] Doc string:
[09/27/2023-03:33:03] [I] [TRT] ----------------------------------------------------------------
t[09/27/2023-03:33:19] [E] Error[4]: /blocks_.0/self_attn/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape. Shapes are [1,-1,128] and [1,1,-1,128].
[09/27/2023-03:33:19] [E] [TRT] ModelImporter.cpp:771: While parsing node number 87 [If -> "/blocks_.0/self_attn/If_output_0"]:
[09/27/2023-03:33:19] [E] [TRT] ModelImporter.cpp:772: --- Begin node ---
[09/27/2023-03:33:19] [E] [TRT] ModelImporter.cpp:773: input: "/blocks_.0/self_attn/Equal_output_0"
output: "/blocks_.0/self_attn/If_output_0"
name: "/blocks_.0/self_attn/If"
op_type: "If"
attribute {
name: "then_branch"
g {
node {
output: "/blocks_.0/self_attn/Constant_12_output_0"
name: "/blocks_.0/self_attn/Constant_12"
op_type: "Constant"
attribute {
name: "value"
t {
dims: 1
data_type: 7
name: "/blocks_.0/self_attn/Constant_12_attr::value"
raw_data: "\001\000\000\000\000\000\000\000"
}
type: TENSOR
}
}
node {
input: "/blocks_.0/self_attn/rotary_emb/Cast_output_0"
input: "/blocks_.0/self_attn/Constant_12_output_0"
output: "/blocks_.0/self_attn/Squeeze_output_0"
name: "/blocks_.0/self_attn/Squeeze"
op_type: "Squeeze"
}
name: "torch_jit1"
output {
name: "/blocks_.0/self_attn/Squeeze_output_0"
type {
tensor_type {
elem_type: 1
shape {
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_0"
}
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_1"
}
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_2"
}
}
}
}
}
}
type: GRAPH
}
attribute {
name: "else_branch"
g {
node {
input: "/blocks_.0/self_attn/rotary_emb/Cast_output_0"
output: "/blocks_.0/self_attn/Identity_output_0"
name: "/blocks_.0/self_attn/Identity"
op_type: "Identity"
}
name: "torch_jit2"
output {
name: "/blocks_.0/self_attn/Identity_output_0"
type {
tensor_type {
elem_type: 1
shape {
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_0"
}
dim {
dim_param: "Identity/blocks_.0/self_attn/Identity_output_0_dim_1"
}
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_1"
}
dim {
dim_param: "Squeeze/blocks_.0/self_attn/Squeeze_output_0_dim_2"
}
}
}
}
}
}
type: GRAPH
}
[09/27/2023-03:33:19] [E] [TRT] ModelImporter.cpp:774: --- End node ---
[09/27/2023-03:33:19] [E] [TRT] ModelImporter.cpp:777: ERROR: ModelImporter.cpp:195 In function parseGraph:
[6] Invalid Node - /blocks_.0/self_attn/If
/blocks_.0/self_attn/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape. Shapes are [1,-1,128] and [1,1,-1,128].
[09/27/2023-03:33:19] [E] Failed to parse onnx file
[09/27/2023-03:33:19] [I] Finished parsing network model. Parse time: 15.8847
[09/27/2023-03:33:19] [E] Parsing model failed
[09/27/2023-03:33:19] [E] Failed to create engine from model or file.
[09/27/2023-03:33:19] [E] Engine set up failed
&&&& FAILED TensorRT.trtexec [TensorRT v8601] # trtexec --onnx=./llm.onnx --saveEngine=./trt/model.plan --optShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128 --minShapes=input_ids:1x1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x1x128 --maxShapes=input_ids:128x1,attention_mask:1x1x128x128,position_ids:128x1,past_key_values:32x2x1x32x128x128

请说明一下使用的是哪个模型，导出方式是什么？

看起来你的错误是一个If节点导致，此项目中导出的onnx都已经将unsqueeze优化了，应该不会有 If 节点了

llama2模型，直接用的trtexec工具转的，怎么会没有if节点呢？我这边输出还能看到if节点
---Original---
From: @.>
Date: Sat, Oct 7, 2023 17:36 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
请说明一下使用的是哪个模型，导出方式是什么？
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

而且我还尝试过用transformer的optimum做hf到onnx的转换，然后从onnx转换成trt也是这个错误
---Original---
From: @.>
Date: Sat, Oct 7, 2023 17:40 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
看起来你的错误是一个If节点导致，此项目中导出的onnx都已经将unsqueeze优化了，应该不会有 If 节点了
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

llama2 的源码没有修改，我优化一下

哇，感谢😊👍👍👍👍太强了😳😳😳期待😳😳请问是要修改llama源码还是onnx转化代码😳？
---Original---
From: @.>
Date: Sat, Oct 7, 2023 17:58 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
llama2 的源码没有修改，我优化一下
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

llama2 的源码没有修改，我优化一下

修改llama源码，这个if来源是squeeze算子引入的

已修复
https://github.com/wangzhaode/llm-export/commit/6be75c3a99b12416bac35775a4c9e0aaeab438d8

哦哦，了解了，大概什么时候更新好呀😳迫不及待想试一下了😳是不是您项目里其他模型也修改了源码呀？我朋友用的您这个chatglm转换就没这个问题
---Original---
From: @.>
Date: Sat, Oct 7, 2023 18:10 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
llama2 的源码没有修改，我优化一下
修改llama源码，这个if来源是squeeze算子引入的
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

已经修改了 是的 别的都有修改 之前没有修改llama的
------------------ Original ------------------
From: xiaobai52HZ @.>
Date: Sat,Oct 7,2023 6:16 PM
To: wangzhaode/llm-export @.>
Cc: 王召德 @.>, Assign @.>
Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
哦哦，了解了，大概什么时候更新好呀😳迫不及待想试一下了😳是不是您项目里其他模型也修改了源码呀？我朋友用的您这个chatglm转换就没这个问题
---Original---
From: @.>
Date: Sat, Oct 7, 2023 18:10 PM
To: @.>;
Cc: @.@.>;
Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
llama2 的源码没有修改，我优化一下
修改llama源码，这个if来源是squeeze算子引入的
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.>
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were assigned.Message ID: @.>

嗯嗯，太强了，感谢，我试试
---Original---
From: @.>
Date: Sat, Oct 7, 2023 18:18 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
已经修改了 是的 别的都有修改 之前没有修改llama的
------------------ Original ------------------
From: xiaobai52HZ @.>
Date: Sat,Oct 7,2023 6:16 PM
To: wangzhaode/llm-export @.>
Cc: 王召德 @.>, Assign @.>
Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
哦哦，了解了，大概什么时候更新好呀😳迫不及待想试一下了😳是不是您项目里其他模型也修改了源码呀？我朋友用的您这个chatglm转换就没这个问题
---Original---
From: @.&gt;
Date: Sat, Oct 7, 2023 18:10 PM
To: @.&gt;;
Cc: @.@.&gt;;
Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
llama2 的源码没有修改，我优化一下
修改llama源码，这个if来源是squeeze算子引入的
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.&gt;
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were assigned.Message ID: @.>
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

好的 问题解决的话可以回复一下或者给个✨

嗯，今天环境有点问题，明天试一下，已经点啦✨

[10/09/2023-08:13:15] [I] [TRT] ----------------------------------------------------------------
[10/09/2023-08:14:00] [W] [TRT] onnx2trt_utils.cpp:374: Your ONNX model has been generated with INT64 weights, while TensorRT does not natively support INT64. Attempting to cast down to INT32.
[10/09/2023-08:14:00] [E] [TRT] ModelImporter.cpp:771: While parsing node number 82 [Squeeze -> "/blocks_.0/self_attn/Squeeze_output_0"]:
[10/09/2023-08:14:00] [E] [TRT] ModelImporter.cpp:772: --- Begin node ---
[10/09/2023-08:14:00] [E] [TRT] ModelImporter.cpp:773: input: "/blocks_.0/self_attn/rotary_emb/Cast_output_0"
output: "/blocks_.0/self_attn/Squeeze_output_0"
name: "/blocks_.0/self_attn/Squeeze"
op_type: "Squeeze"
[10/09/2023-08:14:00] [E] [TRT] ModelImporter.cpp:774: --- End node ---
[10/09/2023-08:14:00] [E] [TRT] ModelImporter.cpp:777: ERROR: builtin_op_importers.cpp:4773 In function importSqueeze:
[8] Assertion failed: !isDynamic(shape) && "Cannot infer squeeze dimensions from a dynamic shape! Please re-export your model with the Squeeze axes input set."
[10/09/2023-08:14:00] [E] Failed to parse onnx file
[10/09/2023-08:14:01] [I] Finished parsing network model. Parse time: 45.9346
[10/09/2023-08:14:01] [E] Parsing model failed
[10/09/2023-08:14:01] [E] Failed to create engine from model or file.
[10/09/2023-08:14:01] [E] Engine set up failed
trtexec转换的时候出现了上述问题
我查看四个输入的维度信息是这样的：
input_ids: seq_len,
attention_mask: 1, 1, seq_len, seq_len,
position_ids: seq_len, 3,
past_key_values: 32, 2, 1, 32, history_len, 128,
token_id: 1,
presents: 32, 2, 1, 32, Concatpresents_dim_4, 128,
在config.pbtxt文件中是这样显示的，
"input": [{
"name": "past_key_values",
"data_type": "TYPE_FP32",
"format": "FORMAT_NONE",
"dims": [32, 2, 1, 32, -1, 128],
"is_shape_tensor": false,
"allow_ragged_batch": false,
"optional": false
}, {
"name": "position_ids",
"data_type": "TYPE_INT64",
"format": "FORMAT_NONE",
"dims": [-1, 3],
"is_shape_tensor": false,
"allow_ragged_batch": false,
"optional": false
}, {
"name": "attention_mask",
"data_type": "TYPE_FP32",
"format": "FORMAT_NONE",
"dims": [1, 1, -1, -1],
"is_shape_tensor": false,
"allow_ragged_batch": false,
"optional": false
}, {
"name": "input_ids",
"data_type": "TYPE_INT64",
"format": "FORMAT_NONE",
"dims": [-1],
"is_shape_tensor": false,
"allow_ragged_batch": false,
"optional": false
}],
position_ids还是有问题吧？
我看了一下chatglm的维度信息是"dims": [-1],

改了position_ids的动态维度也还是这个问题
input_ids: seq_len,
attention_mask: 1, 1, seq_len, target_seq_len,
position_ids: 1, seq_len,
past_key_values: 32, 2, 1, 32, history_len, 128,
token_id: 1,
presents: 32, 2, 1, 32, Concatpresents_dim_4, 128,

"name": "position_ids",
"data_type": "TYPE_INT64",
"format": "FORMAT_NONE",
"dims": [1, -1],
[10/09/2023-08:57:35] [E] [TRT] ModelImporter.cpp:771: While parsing node number 82 [Squeeze -> "/blocks_.0/self_attn/Squeeze_output_0"]:
[10/09/2023-08:57:35] [E] [TRT] ModelImporter.cpp:772: --- Begin node ---
[10/09/2023-08:57:35] [E] [TRT] ModelImporter.cpp:773: input: "/blocks_.0/self_attn/rotary_emb/Cast_output_0"
output: "/blocks_.0/self_attn/Squeeze_output_0"
name: "/blocks_.0/self_attn/Squeeze"
op_type: "Squeeze"
[10/09/2023-08:57:35] [E] [TRT] ModelImporter.cpp:774: --- End node ---
[10/09/2023-08:57:35] [E] [TRT] ModelImporter.cpp:777: ERROR: builtin_op_importers.cpp:4773 In function importSqueeze:
[8] Assertion failed: !isDynamic(shape) && "Cannot infer squeeze dimensions from a dynamic shape! Please re-export your model with the Squeeze axes input set."
[10/09/2023-08:57:35] [E] Failed to parse onnx file
[10/09/2023-08:57:36] [I] Finished parsing network model. Parse time: 45.6445
[10/09/2023-08:57:36] [E] Parsing model failed
[10/09/2023-08:57:36] [E] Failed to create engine from model or file.
[10/09/2023-08:57:36] [E] Engine set up failed
&&&& FAILED TensorRT.trtexec [TensorRT v8601] # trtexec --onnx=./model.onnx --saveEngine=./trt/model.plan --optShapes=input_ids:1,attention_mask:1x1x1x2,position_ids:1x1,past_key_values:32x2x1x32x1x128 --minShapes=input_ids:1,attention_mask:1x1x1x1,position_ids:1x1,past_key_values:32x2x1x32x0x128 --maxShapes=input_ids:128,attention_mask:1x1x128x256,position_ids:1x128,past_key_values:32x2x1x32x128x128 --device=1 --fp16

Assertion failed: !isDynamic(shape) && "Cannot infer squeeze dimensions from a dynamic shape! Please re-export your model with the Squeeze axes input set."

这个不是导出模型的问题了，TRT不支持squeeze动态形状

那我这样改了以后，onnx也能推理，这样改了有问题吗？

这个squeeze算子不支持，我是不是需要改源码，把所有的squeeze换成reshape，还是 只需要吧position_ids的squeeze换成reshape呀

position_ids维度是[-1,3]，这很奇怪吧？3是seq_len的长度
---Original---
From: @.>
Date: Mon, Oct 9, 2023 17:20 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
position_ids的shape是没问题的，不需要修改的
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

大佬，这个能怎么改可以转trt啊😭
---Original---
From: @.>
Date: Mon, Oct 9, 2023 17:19 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
Assertion failed: !isDynamic(shape) && "Cannot infer squeeze dimensions from a dynamic shape! Please re-export your model with the Squeeze axes input set."
这个不是导出模型的问题了，TRT不支持squeeze动态形状
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

我没有测试过trt 这个你来尝试修改一下吧， 这2行 尝试替换成reshape或者view再试试
https://github.com/wangzhaode/llm-export/blob/55154487f32f423546057b5c60f1dbed63077eee/llm_models/Llama-2-7b-chat-ms/modeling_llama.py#L184C5-L184C5

好，我试试
---Original---
From: @.>
Date: Mon, Oct 9, 2023 19:19 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
我没有测试过trt 这个你来尝试修改一下吧， 这2行 尝试替换成reshape或者view再试试
https://github.com/wangzhaode/llm-export/blob/55154487f32f423546057b5c60f1dbed63077eee/llm_models/Llama-2-7b-chat-ms/modeling_llama.py#L184C5-L184C5
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

大佬，您有时间在看一下这大概是什么问题，改了https://github.com/wangzhaode/llm-export/blob/55154487f32f423546057b5c60f1dbed63077eee/llm_models/Llama-2-7b-chat-ms/modeling_llama.py#L183C5-L184C42后，没有那个错误信息了，出来一个新的错误信息，
您看有什么思路改改吗？

大佬，改完之后可以了，想请问这个转换适合llama非chat模型和llama变体模型吗？

大佬，改完之后可以了，想请问这个转换适合llama非chat模型和llama变体模型吗？

适合的 llm基础的模型结构都适用的，另外你的改动是否可以pr一下？

我提交了，您看看有问题没

还有一个问题，因为tensorrt不支持int64，如何转onnx时候设置int32呢

还有一个问题，因为tensorrt不支持int64，如何转onnx时候设置int32呢

可以在代码里修改，导出时打开verbose 看一下int64是哪里出现的，然后把dtype都改成int32就行了

好滴😊
---Original---
From: @.>
Date: Thu, Oct 12, 2023 11:33 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
还有一个问题，因为tensorrt不支持int64，如何转onnx时候设置int32呢
可以在代码里修改，导出时打开verbose 看一下int64是哪里出现的，然后把dtype都改成int32就行了
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

大佬，您做过peft模型（ptuning）和预训练模型（llama）的合并工作吗？就是合并成一个模型，有啥思路可以提供的嘛
😭
我自己用peft的ptuning微调了llama，但是合并不了，因为llama没有promptembedding层
---Original---
From: @.>
Date: Thu, Oct 12, 2023 11:33 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [wangzhaode/llm-export] Thank you very much for yourcontradictory contributions, which have been very helpful to me. I have aquestion that the onnx to trt format appears with ''/blocks _ 0/self_ ATTN/If_OutputLayer: IIfConditionalOutputLayer inputs must have the same shape Shapesare [1, one 1128 and [1], 1, one 1128] Error, how can we solve it? (Issue #1)
还有一个问题，因为tensorrt不支持int64，如何转onnx时候设置int32呢
可以在代码里修改，导出时打开verbose 看一下int64是哪里出现的，然后把dtype都改成int32就行了
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Fix file namings in code snippets

@/app/lib/... in incorrect, it should be @/lib/...

:tada: This issue has been resolved in version 1.5.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix formatting in command list

In my application, I noticed that the columns were not aligned correctly in the usage output:
usage: invoice [--file=<file>] <command> [<args>]

Commands
   status       Show an invoice status report
   list       List invoices
   payment       Records a payment
   generate       Generates an invoice (eventually)
   record       Records an invoice

This PR fixes the column alignment code, so the output now looks like this:
usage: invoice [--file=<file>] <command> [<args>]

Commands
   status     Show an invoice status report
   list       List invoices
   payment    Records a payment
   generate   Generates an invoice (eventually)
   record     Records an invoice

Notes:

In order to be able to test this, I switched the formatter test to use ComplexCLI instead of SampleCLI since it has more than one command.  I also added a new talk command so there would be a command that has a different width than the hello command.  I kept the speak command in place without a description so that the "no description" path would be covered by the tests (it wasn't otherwise).

I changed the formatter test to use a heredoc for the expected output to make it more readable.  However, this now resulted in an extra newline at the end of the output.  I added a little helper function to the test to strip that back out so we don't get an extra blank line at the end of the output.  I had to use String.replace_trailing/3 instead of my original String.trim_trailing/2 to remain compatible with Elixir 1.2.x.

The decreased coverage is because there's a new command in ComplexCLI that never gets executed.  I'm not sure what to do about that.

Coverage decreased (-0.5%) to 96.985% when pulling 760b9073a94c775b64cb59f0a55cceb44065ba2d on randycoulman:fix-command-list-formatting into 846ee3ecba897e021d5d2146fe4ce75284c3ba66 on tuvistavie:master.

Coverage decreased (-0.4%) to 97.0% when pulling 7fa4285af9b019720dc1dab77da38e38a7d91eb5 on randycoulman:fix-command-list-formatting into 846ee3ecba897e021d5d2146fe4ce75284c3ba66 on tuvistavie:master.

I wasn't aware of this, thank you!
I need to change coveralls settings, we really don't care about 0.4% coverage...

@randycoulman I just published version 0.1.2 with your two PRs, thank you very much for the help!


Error from IDE : Webview is disposed

Description

Activate Ethcode Remix Plugin
Compile
Load compiled result into Ethcode extension
Close Ethcode
Try to load compiled result from Remix plugin
Produces Error: Webview is disposed.

Error message
Uncaught (in promise) Error: Error from IDE : Webview is disposed

this issue is fixed now because now


Illegal instruction (core dumped) on Ubuntu 20.04, AVX2

Hi all, it looks like Mujoco is unusable on my machine. Error is in the title: Illegal instruction (core dumped)
OS: Ubuntu 20.04.5 (running through VirtualBox)
CPU: i9-12900K
Using Mujoco 2.2.1
This occurs as soon as I try to import Mujoco in a Jupyter notebook. I cannot manage to get Mujoco working on the latest Win11 release, either. I have tried installing Mujoco both by pip and from source, in case there was some issue with the package not properly recognizing my CPU architecture.
Our hypothesis is that there's some issue caused by my processor's asm being AVX2 rather than AVX.

Check out https://stackoverflow.com/questions/65780506/how-to-enable-avx-avx2-in-virtualbox-6-1-16-with-ubuntu-20-04-64bit

No luck, unfortunately. Tried it with the VM I was using as well as a new one (same OS)

Just to confirm, if you cat /proc/cpuinfo in the VM, does it show AVX and/or AVX2 support?

It does not -- will figure out what's going wrong on my end.

If you can't get AVX enabled on the VM you can always build MuJoCo from source with AVX disabled.

I've followed the StackOverflow solution (as well as the potential solution described in the problem) and despite successfully disabling Hyper-V I have not been able to get my VM access to AVX/AVX2. Any advice?

At this point I think you should just build everything (MuJoCo and Python bindings) from source.

Hi @xRiis, were you able to solve things via Saran’s suggestion?

I've followed the StackOverflow solution (as well as the potential solution described in the problem) and despite successfully disabling Hyper-V I have not been able to get my VM access to AVX/AVX2. Any advice?

I tried the something twice, and I met the same issue. I didn't find how to build MuJoCo from source with AVX disabled. May I have a link to the steps? I appreciate that.

Sorry for the late response. When using CMake, you should be able to specify -DMUJOCO_ENABLE_AVX=OFF (see the config)

Did anyone manage to recompile Mujoco and the python bindings from source with AVX disabled? I'm having the same problem trying to run Ubuntu in Virtualbox.

Did anyone manage to recompile Mujoco and the python bindings from source with AVX disabled? I'm having the same problem trying to run Ubuntu in Virtualbox.

I only recompile Mujoco from source but have no idea how to deal with the python bindings with AVX disabled

If you can't get AVX enabled on the VM you can always build MuJoCo from source with AVX disabled.
I just install mujoco simulator based on C++ with AVX disabled but fail to build the python bindings since it will always show "illegal instruction(core dumped)" when i execute "import mujoco"

mujoco==3.2.5
i just follow the "building from resource" part of the documentation to build the python bindings but still fail.....


Instruction Not Updated

As shown in the screenshot below, the response returned from OneDrive now will have one more field called resourceId in the JSON. It will also have another field called statusDescription when we are copying a drive item which is a folder.
In addition, if the operation of copy fails, then the JSON will have another field called errorCode.
Finally, the "Retrieve the results of the completed operation" section is not finished by the author. Please look into it.
Thank you for your time attending to this. =)

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ccad95fe-ccea-c668-17c3-90781dc6b416
Version Independent ID: cdd73909-251b-ed82-6a3b-778c7f5ce08a
Content: Calling long running actions - OneDrive API - OneDrive dev center
Content Source: docs/rest-api/concepts/long-running-actions.md
Product: onedrive
GitHub Login: @rgregg
Microsoft Alias: rgregg

@goh-chunlin please go here to view the documentation here https://docs.microsoft.com/en-us/graph/long-running-actions-overview?tabs=http
This documentation is more up to date.
We have logged a documentation bug for this issue.

@goh-chunlin please go here to view the documentation here https://docs.microsoft.com/en-us/graph/long-running-actions-overview?tabs=http
This documentation is more up to date.
We have logged a documentation bug for this issue.

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


Plans to support ESLint

Great job as always @antfu
Do you have any plans to support ESLint config? e.g. generating auto-imports-eslintrc.js we can just include into extend section of .eslintrc.js ?

Refer to #3


Add Vagrantfile

+1

I wonder if it would be a good idea to create a new directory deploy there. In there we would have two subdirectories for now: kubernetes and vagrant. The kubernetes one would be the same as the one we have in the root directory, and the vagrant would contain the script that you are passing to vagrant inline. What do you think ?

We can do that, the Vagrantfile is kind of hackish anyways, and I'd like to port it to opensuse with a newer image (leap at least). The only thing that I see by adding deploy and inside there kubernetes and vagrant is that the kubernetes/start.sh script is meant to be run manually, but vagrant/deploy.sh isn't, and I don't know if that can cause some kind of confusion. That's why I preferred to keep the Vagrantfile in one piece (because it's highly hackish right now). However if you see benefits in splitting it I am not against it.

I see your point. Ok, let's do that in the future then 😉


Request for comments on remap parents.yaml configuration

we're planning to add to the ability to configure parent selection per remap in  remap.config.
This is the proposed yaml configuration file that may be used with a remap tag @parent=parents.yaml
parents_yaml.txt

There is a PR for this, closing this issue.


Update readme

Expands the getting started section adding links to pachctl and go client docs.

Ship it!

I shipped it.


Fix issue with pickModel for interleaved buffers

Description
Fixes an issue where interleaved buffers where not being properly accounted for in pickModel. This manifested in strange camera controller behavior for some tilesets, as incorrect positions were being returned from the pick function.
Issue number and link
Fixes https://github.com/CesiumGS/cesium/issues/11816
Fixes https://github.com/CesiumGS/cesium/issues/11812
Testing plan

Ensure the Sandcastle example from https://github.com/CesiumGS/cesium/issues/11816 properly pick the sphere model at all positions
Ensure the tileset in https://github.com/CesiumGS/cesium/issues/11812 can be zoomed in to, and that the camera cannot go beneath the tileset.

Author checklist

[x] I have submitted a Contributor License Agreement
[x] I have added my name to CONTRIBUTORS.md
[x] I have updated CHANGES.md with a short summary of my change
[x] I have added or updated unit tests to ensure consistent code coverage
[ ] ~I have update the inline documentation, and included code examples where relevant~
[x] I have performed a self-review of my code

@javagl Would you mind taking a look at this since you opened both of the original issues?

I tried out the picking sandcastle from https://github.com/CesiumGS/cesium/issues/11816 , using the "sphere" that was attached there, as well as the "unitSquareXY.gltf" and "unitSquareXZ_INTERLEAVED.glb" that are part of the package that I attached in https://github.com/CesiumGS/cesium/pull/11830 , and it did find all intersections as expected.
I tried out the "New York" data set from https://github.com/CesiumGS/cesium/issues/11812 , and from a quick test, the interaction seems to work as expected: It is possible to navigate and zoom (I have not maliciously tried to "break" it, but it seemed to work fine).
(An aside: The data set there was created from a "legacy" data set using the 3d-tiles-tools upgrade command. This is using glTF-Transform to upgrade B3DM to GLB. And glTF-Transform is always writing out interleaved buffers. That's why this issue became only apparent with tilesets that use glTF-Transform-generated GLBs in one way or another...)
For the test data set of the "flat square" at https://github.com/CesiumGS/cesium/issues/11812#issuecomment-1937350303 it ... mostly works as expected: While quickly and randomly rotating the camera, I sometimes managed to move the camera (eye point) below the plane, but ... really rarely, and not in a way that I could systematically reproduce, so there is nothing actionable that can be derived from that.
I had a short look at the code changes, but am not sure whether this was requested implicitly or explicitly.

Aside:
One could consider hiding ...  a few things, so that this "client code" (that just wants to access a plain indexed triangle geometry) does not have to care about quantization and byte stride. This would basically mean that the getVertexPosition (that now receives a lot of arguments) could be replaced by some
class PrimitiveDataAccessor {
    constructor(primitive) {
        // Fetch quanization, normalization, byte stride info,
        // and whatever else you need...
    }

    nowReallyJustGiveMeThatFinalVertexAt(index) {
        return ... // what getVertexPosition is doing
    }
}

so that the client code could just do
const p = new PrimitiveDataAccessor(primitive);
for (let i = 0; i < indicesLength; i += 3) {
  const i0 = indices[i];
  ...
  const v0 = p.nowReallyJustGiveMeThatFinalVertexAt(i);
  ...

One thing that caught my attention was the getBufferData call at https://github.com/CesiumGS/cesium/pull/11842/files#diff-c25ab54b614865d4ba17f0fbc27717f5cbaa07931f69deb0b83b7d0daa1d3505R263 and the offset that is 0 in the interleaved case. I have not yet thought that through or tried it out, but I guess in order to really check whether this is correct, it would be necessary to ...

create a GLB where the interleaved data does not start with the POSITION (e.g. data where the TEXCOORDS_0 appear at offset 0, and the POSITION appear at offset sizeof(vec2<float>)
run this in a configuration where this code path is actually taken (depending on the presence of the vertices typedArray and such)

If a more thorough code review and more rigurous tests for such possible (corner?) cases was intended, drop me a note.

Thanks @javagl!
Since getVertexPosition is a module-scoped function, I'll leave it as-is for the scope of this PR, but we'll keep your suggestion in mind.

create a GLB where the interleaved data does not start with the POSITION (e.g. data where the TEXCOORDS_0 appear at offset 0, and the POSITION appear at offset sizeof(vec2))
run this in a configuration where this code path is actually taken (depending on the presence of the vertices typedArray and such)

This is actually the case for the unit test included here. BoxInterLeaved has an interleaved buffer where the normals are encoded at a byteOffset of 0, and the positions at 12.

@jjhembd Could you please give this a code review?

Indeed, the test returns position of intersection with interleaved model goes this code path (and others as well).
I think that isolating some of that functionality, independent of the picking could be good, to allow tests like
getVertexPosition returns the right position for * input
where * stands for interleaved/compressed/quantized/normalized.... But this (as well as things like being able to load a GLB file as a Model without having a rendering context) might have to be carvet out as dedicated refactorings, and ... I am aware of the trade-offs here.


Replacement Items not in Config

You added a replacement items setting, but I don't see it in the config anywhere. I think something might be missing here.

Thats strange. Normally the setting should appear at the end of an items Lock manipulation settings:

Do all the other settings show up for you?

OH - I assumed it was a general setting, like in the same area as setting lockpick items.

I chose to put this setting into the item settings, since there is a chance, that some lock pick types do not have replacements/ that some lock picks have different replacements.

Ah ok - thank you for explaining how this works. I appreciate the clarification.


Add a nil check for CAPI diff for upgrade plan

Description of changes:
Add a nil check for CAPI diff for upgrade plan. Customer saw a nil pointer thrown while running the upgrade plan.
CAPI change diff does not have the Components Reports initialized because of empty Flux Change Diff.
Testing (if applicable):

make and manual testing

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/test eks-anywhere-presubmit

/approve

/cherrypick release-0.13


gh-696 : Support setting a RedirectResolver

gh-696: Allows settings a RedirectResolver using the AuthorizationServerEndpointsConfigurer.

Closing in favor of #1190


having a problem with the vertical axis (Y), which is getting incorrect values

I'm having a problem with the vertical axis (Y), which is getting incorrect, the axis should show similar to image 1 that shows the vertical axis from 2 to 8, and not from zero to zero as showing the second image, how to solve this, because depending on the data you get this problem.
Expected Behavior

Current Behavior

Steps to Reproduce
var data = LinearChartData(labels: ['A','B','C'], datasets: <ChartDataSets>[
      ChartDataSets(
          label: gTitle,
          backgroundColor: 'rgba(20,20,255,0.2)', borderColor: 'rgba(20,20,255,0.5)', borderWidth: 1,  hoverBackgroundColor: 'rgba(20,20,255,0.9)',
          data: [2,6,5], fill: false, hoverBorderColor: 'navy', lineTension: 0.00001, pointRadius: 5 )
    ]);

    var title = ChartTitleOptions(text: 'Votos x Setor', fullWdith: true, display: false);

    var config = ChartConfiguration(
        type: typeGraph, data: data, options: ChartOptions(maintainAspectRatio: true, title: title, responsive: true, legend: ChartLegendOptions(display: true, position: 'right')));
    Chart(canvasElement, config);

Environment
Chart.js 2.6.0
Google Chrome 83 / Firefox 78
https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.js

I have the same issue.
Any idea?

I also had this problem. The same was resolved in version 2.7.3
Just update the version: https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.3/Chart.js

Updating the version is the best way to resolve this


[Spotify Player] Play liked songs with option to shuffle

Extension
https://www.raycast.com/mattisssa/spotify-player
Description
Currently I can't find a way to play my liked songs. I can search for individual liked songs but that will play the song in isolation rather than playing through all of them. Additionally I'd like the option to shuffle play whatever I'm about to choose.
Who will benefit from this feature?
Anyone who regularly listens to their liked songs.
Anything else?
No response

Here's my comment on a similar issue (#5996).

Unforchantly, it's the Spotify API that doesn't allow for this.
See this community post.

Thanks for the input @bkeys818 👋
The answer community suggests the get user's saved tracks endpoint which looks like it would do what we want but would just have to deal with the pagination.

Ah yes you are right, I hadn't looked deeply at how it works but seems we'd need a liked songs 'context' to play otherwise we'd just have to add all songs to the queue which would be a pain as you say.
Probably better to just create playlists for what I would commonly like to play. Thanks for your help to understand, gonna close this.

@homostellaris
I made a tool that might help with this. It's still in beta, but I'd love another tester. Check out my spotify-tools repo.

@nightgolfer, You might just be onto something...


[WIP] Version 0.1.0

This PR was migrated from another one in the main spin repository.
Signed-off-by: sealmove<EMAIL_ADDRESS>

@sealmove — This is awesome, thank you SO much for your work here!
Is this PR still a WIP?

Hey @radu-matei. This could be merged, but I have been working on outbound http which is not completed yet. I haven't worked on the SDK the last couple of weeks but I am coming back to it very soon.

Outbound HTTP can definitely be a separate PR.
One thing that would be very useful for this PR is a readme describing how to use the project.


Fixes Server Capabilities apis to respond with RFC3339 date/time Format #7408

Closes: #7465
Related: #5911

Documentation
Traffic Ops

What is the best way to verify this PR?
Make Api calls to service_category 5.0
curl --request GET \
  --url https://localhost:8443/api/5.0/server_capabilities

{
	"response": [
		{
			"name": "disk",
			"lastUpdated": "2023-05-03T12:24:40.408349+05:30",
			"description": "server capability disk"
		},
		{
			"name": "ram",
			"lastUpdated": "2023-05-03T12:24:40.406796+05:30",
			"description": "server capability ram"
		}
	]
}

If this is a bugfix, which Traffic Control versions contained the bug?

7.0.1

PR submission checklist

[x] This PR has tests
[x] This PR has documentation
[x] This PR has a CHANGELOG.md entry
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

@jagan-parthiban If you rebase this onto the master branch, the CiaB workflow should pass, since #7489 is what makes it fail

On second thought, maybe this is a little complicated to be able to easily save time with generics. Once the branch is rebased onto the master branch, #7482 should be good to merge.


ZEVA - comments cannot be edited by IDIR users

Describe the Bug
When a policy analyst or a director tries to edit their comments on the credit transactions page, the page shows the following error:

The user has to click edit and delete contents of the comment and then add a new comment.
Expected Behaviour
Expected behaviour is that the edit is saved.
Actual Behaviour
An error message appears. A page refresh is required to navigate anywhere else.
Implications
The user can't efficiently leave comments and correct their comments.
Steps To Reproduce
Steps to reproduce the behaviour:
User/Role:

Go to credit applications
Add a comment to a director as a policy analyst
Click edit comment
See error

I checked on test and I could edit and save my comments both in credit transfers and credit applications.


✨  scrape descriptions on encode

Followup work to https://github.com/brentp/echtvar/pull/34.
I tried to tackle the task of INFO field description scraping requested in https://github.com/brentp/echtvar/issues/33. Found rust-htslib pretty ill-equipped for the task, but I'm way too much of a rust/c novice to delve deeply into the core of htslib. This could perhaps be done better using bcf_hdr_get_hrec.
In the end I made a short function to filter down the HeaderRecord vector using an ID value. Since there should only ever be one INFO header record with a particular ID, I return the description from the first of the remaining records. If it's not there I pass along the default value. On the way out I make sure to trim the " since the update_header function expects the descriptions to be unquoted.
In the encoder_main function I only call this function when the field description is not the default. I figure we'd want to give user priority in field naming.
As for how the check against the default is done, I couldn't really figure out how to get a default value for a field the way things were so I went ahead and made the fields::default_description_string() function public. I'm not sure if that's a good way of doing that so I'm open to suggestions.
Let me know if this is fine. Feel free to discard the PR if you want to go about this a different way.

@dmiller15 , this looks good to me. Ready from your end?

Just tested it, and it's still working as intended.

thank  you!

@dmiller15 , this fails tests/big.sh. Can you fix that?

Ok didn't notice that we'd added more tests, and the test logic is no longer true. I'll update that batch of tests and have a PR up today.


RFC for modularization of Miner/Validators tasks

Notion doc

https://www.notion.so/masafinance/Refactor-Modularisation-of-tasks-40350e2d36cb461ab47d6544974bfee2?pvs=4

Acceptance criteria

Definition on how to move forward with the structure of the bittensor-1 repo

Related issues

#66

First version of RFC is ready for comments:

https://www.notion.so/masafinance/Refactor-Modularisation-of-tasks-40350e2d36cb461ab47d6544974bfee2?pvs=4

TL;DR of proposal:
- services folder
    - has 1 request class per external service to the network
- utils folder
    - generic and deterministic uid fetchers (i.e. get_random_uids)
- api
    - validator_api which sets route and imports function to run upon request (from task)
- base
    - shared methods and attributes across neurons, miners and validators
        - Neuron's state management
        - Neuron's metagraph management
        - Validator's update weights logic
        - etc.
- Neurons
    - miner entry point for users that want to run miner node
    - validator entry point for users that want to run a validator node
- tasks folder (with subfolders, 1 for each):
    - Custom Synapse object → `protocol.py`
    - Custom types for the whole process (responses, query, etc.) → `types.py`
    - Miner logic → `miner.py`
        - Extends whichever Request class it needs (1 Request Class per External Service)
        - Process that request as required by task:
            - Extra calculations
            - Format to match Synapse response
    - Validator logic → `validator.py`
        - def forward()
            - Which miners (uids) to query based on its task
            - Perform synapse to miners
            - Handle responses
            - Score responses and update uid scores
            - Return actual respond to user
        - def reward()
            - how validate and score responses
        - def generate_response()
            - Based on responses and scores, generate final output for user

Moving it to review and getting to tinker the approach to share some snippets/env for review if that's eventually needed

Refactor: Modularisation of tasks
🎯 Goal
As we grow the codebase of the masa-bittensor repo, we write this RFC to document and open the conversation on the problematic that rose while integrating the Discord Profile and Web Scraper tasks to the Subnet.
🥅 What we want to achieve

Localisation of development
Ease on reviews
Minimize feature’s footprint across the codebase
Ensure stability of environment through decoupling
Scalable solution
Black box behavior of Validator/Miner tasks to the infra

🪨 Current state
Highest level
The repo has two main folders:

masa
neurons

neurons implement the Miner and Validator classes which extended our masa custom implementation for usage. These are our entry point scripts for them to run.
Masa's Subnet Logic
Inside masa folder we can find most importatly:

api

Defines Synapse Object
Defines Validator's FastAPI

base

Defines building blocks to be extended (Neuron, Miner & Validator)

miner

Defines Masa Protocol Request Class
Depending the required task to perform, it extends and implements custom class

validator

Implements base forwarder class
Depending the required task to perform, it extends the forwarder class and implements rewards and parser functions

⚠ Problem
Everytime we want to add a new task, we need to:

Create a new Miner Class extending Masa Protocol's Request
Define new types for query params and request responses
Add optional attribute to Synapse Object on request.py to receive query or body params
Add new api route on validator_api.py and function to be called using custom Forwarder
Implement custom rewards and parser (this one based on the return type of the response)

‼ On paper, that seems pretty easy to achieve but in reality code is hard to follow and developers need to jump around files a lot to even understand how things are connected and working.

Additionally, since the forwarder class is pretty much fixed in the steps it follows, custom behavior for each task is hard to achieve

🔬 Proposed solution
TL;DR:

services folder

has 1 request class per external service to the network

utils folder

generic and deterministic uid fetchers (i.e. get_random_uids)

api

validator_api which sets route and imports function to run upon request (from task)

base

shared methods and attributes across neurons, miners and validators

Neuron's state management
Neuron's metagraph management
Validator's update weights logic
etc.

Neurons

miner entry point for users that want to run miner node
validator entry point for users that want to run a validator node

tasks folder (with subfolders, 1 for each):

Custom Synapse object → protocol.py
Custom types for the whole process (responses, query, etc.) → types.py
Miner logic → miner.py

Extends whichever Request class it needs (1 Request Class per External Service)
Process that request as required by task:

Extra calculations
Format to match Synapse response

Validator logic → validator.py

def forward()

Which miners (uids) to query based on its task
Perform synapse to miners
Handle responses
Score responses and update uid scores
Return actual respond to user

def reward()

how validate and score responses

def generate_response()

Based on responses and scores, generate final output for user

Update on the code spike: https://masafinance.slack.com/archives/C0742F6KXB8/p1718194559616379

Closed since follow-up actions (issues) are defined and created.
Next step is set on #93


Token not found/unknown service

After following the guide to run wechaty for the first time in linux and windows, I was not successful. There are a few issues:

Which token provider to use is not clear. Some links are circular, others are dead ends.
Incorrect method for setting environment variables in windows ("set" should be "$env:" for powershell. powershell is was required for some steps. I cannot remember which)
Step: "npm install wechaty-puppet-NAME" missing

These are the steps I took to install wechat on windows today:
Windows installation instructions

Use powershell in administrator mode.
Install node.js v12+
Clone repo: git clone https://github.com/wechaty/wechaty-getting-started.git
cd wechaty-getting-started
npm install
Install token service
npm install wechaty-puppet-NAME (padlocal confirmed working)
Get token from token service provider
Set environment variables:
$env:WECHATY_PUPPET="wechaty-puppet-NAME"
$env:WECHATY_PUPPET_NAME_TOKEN="TOKEN"
$env:WECHATY_LOG="verbose"
npm start

Now the next problem is that I have already paid for a token from paimon. When I try to set paimon as the puppet via $env:WECHATY_PUPPET="wechaty-puppet-paimon" I get npm module not supported. This is the same error which was fixed for paimon by running npm install wechaty-puppet-padmon . Running the npm install wechaty-puppet-paimon yields NOT FOUND

There's no such puppet named wechaty-puppet-paimon because the paimon is a Puppet Service instead of a Puppet Provider.
Please try the following command if you are using the paimon puppet service:
export WECHATY_PUPPET=wechaty-puppet-service
export WECHATY_PUPPET_SERVICE_TOKEN=puppet_paimon_XXX

Then I believe your Wechaty bot will be able to start with the paimon service.

Hello, after re-read your issue, I believe that our docs should be improved and you know how to make it work under Windows/PowerShell.
It would be great if you can send PRs to fix what you found is not right in our docs, thank you very much!

Great to hear from you, thank you very much!


MINMAXAVG doesn't show negative averages

Die rolls made under 0 are not averaging correctly.

It's fixed now.


[TaskList] Nickel (2021.06 - 2021.12) feature list about cosmosdb and storage

Storage components related issues:

[ ] #21766 Enhance metrics for Azure Spring database/storage components
[ ] #21763 Enhance tracing for Azure Spring database/storage components
[ ] #21462 Spring Storage - Enable retry policy for storage
[ ] 8⃣#21461 Spring Storage - Support AppendBlobResource and PageableBlobResource in azure-spring-cloud-storage
[x] #21486
[x] #22707
[x] #21460 ~Spring Storage - Enable authentication via app id and secret~
[x] #21459 ~Spring Storage -Enable authentication via managed identity~ -- should be resolved by a consistency way

DataBase

[x] #21498 [it has related implementation] ~Spring - E2E sample demonstrating interaction with AAD, externalized configurations, secret management and data persistence layer with Azure data services~
[ ] #21493 Spring Database - Create JDBC starters for credential-less connections

Cosmos DB

[ ] 🅿#21440 Spring Cosmos - Support change feed
[ ] 🅿#21442 Spring Cosmos - Support bulk exeutor
[ ] #21432 Spring Cosmos - Support Spring data REST access
[x] #21434 Spring Cosmos - Support Spring actuator
[ ] #21448 Spring Cosmos - Support metrics

 SQL Server R2dbc

Improve SQL server r2dbc library related

R2DBC stands for Reactive Relational Database Connectivity, a specification to integrate SQL databases using reactive drivers.

[x]  #21602 Support SQL Variant
[x]  #21603 Support XML data types
[x]  #21604 Support user defined types
[x]  #21605 Support call stored procedure
[x] #21454  Sketch approach for credential free access to Azure RDBMS from Spring

close this one, we dont use this issue to track nickel issues anymore


Promises Support

This adds support for passing in a promise that returns the netfliy options hash. This is useful if you need to perform any async work (http requests, load a file etc..) in order to properly configure your netlify options hash.

Coverage increased (+6.12%) when pulling 7337edf28587f16221d820f6586f2323d1e69372 on promises into b14a8895687d097624eef3babba1ba538b9cbffa on master.

Looks good! :+1: I'd just change the readme example perhaps.

Coverage increased (+6.12%) when pulling 7437b2651864e6debd018043113e915a31befedb on promises into b14a8895687d097624eef3babba1ba538b9cbffa on master.

Coverage increased (+6.12%) when pulling eb0a6ee21f49b8e4365776ef63185482197c5006 on promises into b14a8895687d097624eef3babba1ba538b9cbffa on master.


Compiler: don't use with_scope if Call has a receiver

Fixes #12099
Fixes #12097
Fixes #12137
Oops! We were setting the with_scope attribute of a Call (the scope where we look up methods for the with ... yield object) on calls that had a receiver. If a call has a receiver we should never look up the method on the with ... yield object.
I think this was working fine, by chance, except when it interacted with method_missing.

Thanks @straight-shoota you dat best! ❤


lnav: 0.10.0 -> 0.10.1-beta1

ChangeLog: https://github.com/tstack/lnav/releases/tag/v0.10.1-beta1

Motivation for this change
Version bump
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

What's the reason for updating to a beta release?

This beta fixes some really annoying regressions on the 0.10.0, so the reasoning behind jumping on it was to not keep users waiting for longer than necessary.


Logs - clicking search does not move focus

Hi,
when you click on the search button in the logs, the focus is not moved to the search bar.
An additional click in the search bar is needed.
Can you change that? :grinning:
Regards
Hyper

You mean autofocus right?

You mean autofocus right?

An additional click is needed to make the keyboard appear.

Fixed on v4.0.5.


dynamically filter table columns

I think the idea was to filter rows based on values for a column, but not really sure, now. This can sort-of be accomplished by selecting a set in the scatterplot.


uib-tab

Hi,
Any reason why tabs are now <div> instead of <a> ?
We have to reskin everything but it seems to create a strange behavior that im unable to reproduce in plunkr.
Tabs appear only after a user interaction, like its missing an apply() or something.
Ill try to plnk it the best i can.

Are you missing some text in the message?
____ instead of _____, what goes in the blanks?

its ok now :)

Yes.  We ran into issues with Firefox (and maybe Webkit browsers) reloading the page when the tab was clicked.  And this was happening before angular was processing the href attribute so this was the "fix."  We don't love it and it has accessibility ramifications.
I'll check the docs and breaking changes section to make sure this gets documented if it's not.

@Rouche the reason is because of some use cases where routing issues would happen if you try to use certain elements within the anchor tags, such as buttons. Nesting a button inside an anchor tag actually is a case of bad HTML, but UI Bootstrap shouldn't be interfering with use cases such as this, which is why the breaking change is listed.
The demo documentation has the necessary CSS necessary in order to fix this on the user side.

Cool, thanks @wesleycho.

OK il follow this to my colleague.
Thanks.
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
This
email has been sent from a virus-free computer protected by Avast.
www.avast.com
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
<#DDB4FAA8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
[image: ResoluTech]
Jean-Francois Larouche
Architecture de Solutions TI
[image: Cell]<PHONE_NUMBER> | [image: Email]<EMAIL_ADDRESS>Web] http://www.resolutech.com
http://ca.linkedin.com/pub/jean-francois-larouche/1/b84/530
On Fri, Jan 8, 2016 at 5:38 PM, Adam Gordon<EMAIL_ADDRESS>wrote:

Cool, thanks @wesleycho https://github.com/wesleycho.
—
Reply to this email directly or view it on GitHub
https://github.com/angular-ui/bootstrap/issues/5181#issuecomment-170147100
.

@Rouche, I've edited your comment to remove all your personal information.  In general, it's not a good idea to reply to GitHub notification emails from your work email account because corporations like to add on stuff that's outside of your control.

Thanks, my bad.


Problem with Bar Height - Please Add Bar Height

Is your feature request related to a problem? Please describe.
Yes
Describe the solution you'd like
I want you add bar height because if i change the height of bar with CSS (card-mod etc.) I have this problem: https://i.imgur.com/Vbmu6Ay.gif on every refresh on every tab that i have the bar. It loads first the original height and after that the CSS fixed height. So it's like have bug/lag...
Additional context
I see your latest update that you add border_width and I was happy about.. but after some time it was clear to me what's the purpose of this... Please add a general height and it will be perfect!

fixed in version 1.1.3-beta
I added a new height option

It works like a charm!! It fix the problem! Thanks a lot!!!!


doc: wsl set default version

@race-of-sloths

@flmel Could you, please, review it?

@dj8yfo Thank you for your contribution! Your pull request is now a part of the Race of Sloths!
King of Sloths shakes your hand! Yellow leader's jersey is yours deservedly!

Current status: waiting for scoring
We're waiting for maintainer to score this pull request with @race-of-sloths score [0,1,2,3,5,8,13] command
What is the Race of Sloths

Race of Sloths is a friendly competition where you can participate in challenges and compete with other open-source contributors within your normal workflow
For contributors:

Tag @race-of-sloths inside your pull requests
Wait for the maintainer to review and score your pull request
Check out your position in the Leaderboard
Keep weekly and monthly streaks to reach higher positions
Boast your contributions with a dynamic picture of your Profile

For maintainers:

Score pull requests that participate in the Race of Sloths
Engage contributors with fair scoring and fast responses so they keep their streaks
Promote the Race to the point where the Race starts promoting you
Grow the community of your contributors

Feel free to check our website for additional details!

Bot commands

For contributors

Include a PR: @race-of-sloths include to enter the Race with your PR

For maintainers:

Assign points: @race-of-sloths score [1/2/3/5/8/13] to award points based on your assessment.
Reject this PR: @race-of-sloths exclude to send this PR back to the drawing board.
Exclude repo: @race-of-sloths pause to stop bot activity in this repo until @race-of-sloths unpause command is called

Hey @dj8yfo the reason for skipping on setting the default version (or suggesting any version in general) is that its not always possible to use v2 out of the box. On the VM and one of the natively running machines I tested, due to some bios settings it wasn't possible to use wsl v2, only setting the version to v1 worked. I can find the issue if dig a bit.
What is the direct impact for you if the default wsl version is not explicitly set to v2? Maybe we can add an TIP section mentioning these scenarios?

@flmel well, i tested on a vm windows 10, and it worked.
Also i found that it's easier to set a default version first, than try to convert a v1  distro to v2 later, which actually failed in my case.
It may be made a recommendation tip only for sure.
If it doesn't work, well, alas.
cargo-near will now work via docker by default, and docker is enabled relatively easy from inside wsl2 distros if it was installed with WsL2 backend.

🥁  Score it!
@flmel, please score the PR with @race-of-sloths score [1/2/3/5/8/13]. The contributor deserves it.
If no scoring is provided within 24 hours, this PR will be scored as 2 🦥