text:
No Detection on testing custom train model

I have trained the cascade_mask_rcnn_hrnetv2p_w32_20e_coco model on custom train model for three classes.I have used coco json format for training of model. it is giving me following log during the training
2020-12-09 15:00:00,430 - mmdet - INFO - Start running, host: root@290305e98ef9, work_dir: /content/drive/My Drive/mmdetection_object_detection_demo/mmdetection/work_dirs/cascade_mask_rcnn_hrnetv2p_w32_20e_coco
2020-12-09 15:00:00,431 - mmdet - INFO - workflow: [('train', 1)], max: 100 epochs
/usr/local/lib/python3.6/dist-packages/torch/nn/functional.py:2973: UserWarning: Default upsampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for details.
"See the documentation of nn.Upsample for details.".format(mode))
2020-12-09 15:01:04,808 - mmdet - INFO - Epoch [1][50/770]	lr: 1.978e-03, eta: 1 day, 3:30:34, time: 1.287, data_time: 0.073, memory: 9197, loss_rpn_cls: 0.4559, loss_rpn_bbox: 0.0851, s0.loss_cls: 0.6585, s0.acc: 88.9141, s0.loss_bbox: 0.0368, s0.loss_mask: 0.3046, s1.loss_cls: 0.3321, s1.acc: 93.9238, s1.loss_bbox: 0.0108, s1.loss_mask: 0.1793, s2.loss_cls: 0.1782, s2.acc: 98.6797, s2.loss_bbox: 0.0021, s2.loss_mask: 0.1850, loss: 2.4285
2020-12-09 15:02:12,257 - mmdet - INFO - Epoch [1][100/770]	lr: 3.976e-03, eta: 1 day, 4:09:13, time: 1.349, data_time: 0.017, memory: 9286, loss_rpn_cls: 0.0841, loss_rpn_bbox: 0.0599, s0.loss_cls: 0.4245, s0.acc: 96.8809, s0.loss_bbox: 0.0722, s0.loss_mask: 0.2387, s1.loss_cls: 0.2213, s1.acc: 97.8672, s1.loss_bbox: 0.0354, s1.loss_mask: 0.0971, s2.loss_cls: 0.1107, s2.acc: 98.7051, s2.loss_bbox: 0.0085, s2.loss_mask: 0.0315, loss: 1.3839
2020-12-09 15:03:18,895 - mmdet - INFO - Epoch [1][150/770]	lr: 5.974e-03, eta: 1 day, 4:14:25, time: 1.333, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.0619, loss_rpn_bbox: 0.0612, s0.loss_cls: 0.3015, s0.acc: 96.5352, s0.loss_bbox: 0.0915, s0.loss_mask: 0.2569, s1.loss_cls: 0.1794, s1.acc: 97.3066, s1.loss_bbox: 0.0474, s1.loss_mask: 0.1024, s2.loss_cls: 0.0965, s2.acc: 98.3594, s2.loss_bbox: 0.0118, s2.loss_mask: 0.0354, loss: 1.2458
2020-12-09 15:04:26,702 - mmdet - INFO - Epoch [1][200/770]	lr: 7.972e-03, eta: 1 day, 4:23:57, time: 1.356, data_time: 0.021, memory: 9402, loss_rpn_cls: 0.0832, loss_rpn_bbox: 0.0760, s0.loss_cls: 0.2321, s0.acc: 95.9004, s0.loss_bbox: 0.1083, s0.loss_mask: 0.2704, s1.loss_cls: 0.1438, s1.acc: 96.6426, s1.loss_bbox: 0.0534, s1.loss_mask: 0.1017, s2.loss_cls: 0.0828, s2.acc: 97.8359, s2.loss_bbox: 0.0148, s2.loss_mask: 0.0356, loss: 1.2021
2020-12-09 15:05:30,204 - mmdet - INFO - Epoch [1][250/770]	lr: 9.970e-03, eta: 1 day, 4:07:11, time: 1.270, data_time: 0.019, memory: 9402, loss_rpn_cls: 0.3703, loss_rpn_bbox: 0.8771, s0.loss_cls: nan, s0.acc: 56.1836, s0.loss_bbox: nan, s0.loss_mask: 23.1429, s1.loss_cls: nan, s1.acc: 76.8734, s1.loss_bbox: nan, s1.loss_mask: 1.5815, s2.loss_cls: nan, s2.acc: 77.4301, s2.loss_bbox: nan, s2.loss_mask: 0.0615, loss: nan
2020-12-09 15:06:26,744 - mmdet - INFO - Epoch [1][300/770]	lr: 1.197e-02, eta: 1 day, 3:25:59, time: 1.131, data_time: 0.017, memory: 9402, loss_rpn_cls: 0.5307, loss_rpn_bbox: 0.0789, s0.loss_cls: nan, s0.acc: 0.3203, s0.loss_bbox: nan, s0.loss_mask: 25.6634, s1.loss_cls: nan, s1.acc: 49.8946, s1.loss_bbox: nan, s1.loss_mask: 0.0110, s2.loss_cls: nan, s2.acc: 49.8946, s2.loss_bbox: nan, s2.loss_mask: 0.0060, loss: nan
2020-12-09 15:07:21,946 - mmdet - INFO - Epoch [1][350/770]	lr: 1.397e-02, eta: 1 day, 2:51:25, time: 1.104, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.4244, loss_rpn_bbox: 0.0825, s0.loss_cls: nan, s0.acc: 1.0703, s0.loss_bbox: nan, s0.loss_mask: 0.1908, s1.loss_cls: nan, s1.acc: 49.8663, s1.loss_bbox: nan, s1.loss_mask: 0.0073, s2.loss_cls: nan, s2.acc: 49.8663, s2.loss_bbox: nan, s2.loss_mask: 0.0059, loss: nan
2020-12-09 15:08:18,355 - mmdet - INFO - Epoch [1][400/770]	lr: 1.596e-02, eta: 1 day, 2:29:06, time: 1.128, data_time: 0.019, memory: 9402, loss_rpn_cls: 0.3583, loss_rpn_bbox: 0.0680, s0.loss_cls: nan, s0.acc: 1.3047, s0.loss_bbox: nan, s0.loss_mask: 0.2160, s1.loss_cls: nan, s1.acc: 48.2250, s1.loss_bbox: nan, s1.loss_mask: 0.0057, s2.loss_cls: nan, s2.acc: 48.2250, s2.loss_bbox: nan, s2.loss_mask: 0.0045, loss: nan
2020-12-09 15:09:14,494 - mmdet - INFO - Epoch [1][450/770]	lr: 1.796e-02, eta: 1 day, 2:10:47, time: 1.123, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.3456, loss_rpn_bbox: 0.0721, s0.loss_cls: nan, s0.acc: 1.4453, s0.loss_bbox: nan, s0.loss_mask: 0.2611, s1.loss_cls: nan, s1.acc: 49.1674, s1.loss_bbox: nan, s1.loss_mask: 0.0059, s2.loss_cls: nan, s2.acc: 49.1674, s2.loss_bbox: nan, s2.loss_mask: 0.0044, loss: nan
2020-12-09 15:10:12,922 - mmdet - INFO - Epoch [1][500/770]	lr: 1.996e-02, eta: 1 day, 2:01:46, time: 1.169, data_time: 0.019, memory: 9402, loss_rpn_cls: 0.2846, loss_rpn_bbox: 0.0540, s0.loss_cls: nan, s0.acc: 2.0352, s0.loss_bbox: nan, s0.loss_mask: 0.2760, s1.loss_cls: nan, s1.acc: 49.0887, s1.loss_bbox: nan, s1.loss_mask: 0.0046, s2.loss_cls: nan, s2.acc: 49.0887, s2.loss_bbox: nan, s2.loss_mask: 0.0032, loss: nan
2020-12-09 15:11:10,844 - mmdet - INFO - Epoch [1][550/770]	lr: 2.000e-02, eta: 1 day, 1:53:03, time: 1.158, data_time: 0.016, memory: 9402, loss_rpn_cls: 0.3248, loss_rpn_bbox: 0.0693, s0.loss_cls: nan, s0.acc: 1.2578, s0.loss_bbox: nan, s0.loss_mask: 0.2344, s1.loss_cls: nan, s1.acc: 48.4576, s1.loss_bbox: nan, s1.loss_mask: 0.0032, s2.loss_cls: nan, s2.acc: 48.4576, s2.loss_bbox: nan, s2.loss_mask: 0.0020, loss: nan
2020-12-09 15:12:07,954 - mmdet - INFO - Epoch [1][600/770]	lr: 2.000e-02, eta: 1 day, 1:43:53, time: 1.142, data_time: 0.020, memory: 9402, loss_rpn_cls: 0.3204, loss_rpn_bbox: 0.0704, s0.loss_cls: nan, s0.acc: 2.0801, s0.loss_bbox: nan, s0.loss_mask: 0.2596, s1.loss_cls: nan, s1.acc: 50.0763, s1.loss_bbox: nan, s1.loss_mask: 0.0042, s2.loss_cls: nan, s2.acc: 50.0763, s2.loss_bbox: nan, s2.loss_mask: 0.0028, loss: nan
2020-12-09 15:13:04,250 - mmdet - INFO - Epoch [1][650/770]	lr: 2.000e-02, eta: 1 day, 1:34:24, time: 1.126, data_time: 0.017, memory: 9402, loss_rpn_cls: 0.3282, loss_rpn_bbox: 0.0708, s0.loss_cls: nan, s0.acc: 1.4551, s0.loss_bbox: nan, s0.loss_mask: 0.2447, s1.loss_cls: nan, s1.acc: 48.1672, s1.loss_bbox: nan, s1.loss_mask: 0.0039, s2.loss_cls: nan, s2.acc: 48.1672, s2.loss_bbox: nan, s2.loss_mask: 0.0023, loss: nan
2020-12-09 15:14:00,980 - mmdet - INFO - Epoch [1][700/770]	lr: 2.000e-02, eta: 1 day, 1:26:56, time: 1.135, data_time: 0.016, memory: 9402, loss_rpn_cls: 0.2958, loss_rpn_bbox: 0.0585, s0.loss_cls: nan, s0.acc: 1.6367, s0.loss_bbox: nan, s0.loss_mask: 0.2646, s1.loss_cls: nan, s1.acc: 48.1508, s1.loss_bbox: nan, s1.loss_mask: 0.0019, s2.loss_cls: nan, s2.acc: 48.1508, s2.loss_bbox: nan, s2.loss_mask: 0.0011, loss: nan
2020-12-09 15:14:57,781 - mmdet - INFO - Epoch [1][750/770]	lr: 2.000e-02, eta: 1 day, 1:20:27, time: 1.136, data_time: 0.017, memory: 9402, loss_rpn_cls: 0.3063, loss_rpn_bbox: 0.0687, s0.loss_cls: nan, s0.acc: 1.7285, s0.loss_bbox: nan, s0.loss_mask: 0.2867, s1.loss_cls: nan, s1.acc: 48.5758, s1.loss_bbox: nan, s1.loss_mask: 0.0033, s2.loss_cls: nan, s2.acc: 48.5758, s2.loss_bbox: nan, s2.loss_mask: 0.0020, loss: nan
2020-12-09 15:15:20,093 - mmdet - INFO - Saving checkpoint at 1 epochs
[>>] 1556/1556, 6.3 task/s, elapsed: 247s, ETA:     0s2020-12-09 15:19:29,783 - mmdet - INFO - Evaluating bbox...
Loading and preparing results...
2020-12-09 15:19:29,784 - mmdet - ERROR - The testing results of the whole dataset is empty.
2020-12-09 15:19:29,786 - mmdet - INFO - Exp name: cascade_mask_rcnn_hrnetv2p_w32_20e_coco.py
2020-12-09 15:19:29,786 - mmdet - INFO - Epoch(val) [1][770]
2020-12-09 15:20:31,019 - mmdet - INFO - Epoch [2][50/770]	lr: 2.000e-02, eta: 1 day, 0:44:09, time: 1.224, data_time: 0.063, memory: 9402, loss_rpn_cls: 0.2979, loss_rpn_bbox: 0.0625, s0.loss_cls: nan, s0.acc: 1.4727, s0.loss_bbox: nan, s0.loss_mask: 0.2738, s1.loss_cls: nan, s1.acc: 48.6368, s1.loss_bbox: nan, s1.loss_mask: 0.0042, s2.loss_cls: nan, s2.acc: 48.6368, s2.loss_bbox: nan, s2.loss_mask: 0.0025, loss: nan
2020-12-09 15:21:28,046 - mmdet - INFO - Epoch [2][100/770]	lr: 2.000e-02, eta: 1 day, 0:41:06, time: 1.141, data_time: 0.017, memory: 9402, loss_rpn_cls: 0.3007, loss_rpn_bbox: 0.0586, s0.loss_cls: nan, s0.acc: 1.9902, s0.loss_bbox: nan, s0.loss_mask: 0.2526, s1.loss_cls: nan, s1.acc: 48.6786, s1.loss_bbox: nan, s1.loss_mask: 0.0013, s2.loss_cls: nan, s2.acc: 48.6786, s2.loss_bbox: nan, s2.loss_mask: 0.0007, loss: nan
2020-12-09 15:22:25,833 - mmdet - INFO - Epoch [2][150/770]	lr: 2.000e-02, eta: 1 day, 0:39:20, time: 1.156, data_time: 0.016, memory: 9402, loss_rpn_cls: 0.3119, loss_rpn_bbox: 0.0664, s0.loss_cls: nan, s0.acc: 1.8926, s0.loss_bbox: nan, s0.loss_mask: 0.2522, s1.loss_cls: nan, s1.acc: 48.4246, s1.loss_bbox: nan, s1.loss_mask: 0.0027, s2.loss_cls: nan, s2.acc: 48.4246, s2.loss_bbox: nan, s2.loss_mask: 0.0014, loss: nan
2020-12-09 15:23:24,674 - mmdet - INFO - Epoch [2][200/770]	lr: 2.000e-02, eta: 1 day, 0:39:01, time: 1.177, data_time: 0.023, memory: 9402, loss_rpn_cls: 0.3139, loss_rpn_bbox: 0.0598, s0.loss_cls: nan, s0.acc: 2.6074, s0.loss_bbox: nan, s0.loss_mask: 0.2666, s1.loss_cls: nan, s1.acc: 49.2508, s1.loss_bbox: nan, s1.loss_mask: 0.0044, s2.loss_cls: nan, s2.acc: 49.2508, s2.loss_bbox: nan, s2.loss_mask: 0.0025, loss: nan
2020-12-09 15:24:22,291 - mmdet - INFO - Epoch [2][250/770]	lr: 2.000e-02, eta: 1 day, 0:37:08, time: 1.152, data_time: 0.020, memory: 9402, loss_rpn_cls: 0.3193, loss_rpn_bbox: 0.0767, s0.loss_cls: nan, s0.acc: 2.1250, s0.loss_bbox: nan, s0.loss_mask: 0.2536, s1.loss_cls: nan, s1.acc: 48.9561, s1.loss_bbox: nan, s1.loss_mask: 0.0057, s2.loss_cls: nan, s2.acc: 48.9561, s2.loss_bbox: nan, s2.loss_mask: 0.0028, loss: nan
2020-12-09 15:25:19,096 - mmdet - INFO - Epoch [2][300/770]	lr: 2.000e-02, eta: 1 day, 0:34:22, time: 1.136, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.3028, loss_rpn_bbox: 0.0567, s0.loss_cls: nan, s0.acc: 1.8555, s0.loss_bbox: nan, s0.loss_mask: 0.2635, s1.loss_cls: nan, s1.acc: 47.3700, s1.loss_bbox: nan, s1.loss_mask: 0.0030, s2.loss_cls: nan, s2.acc: 47.3700, s2.loss_bbox: nan, s2.loss_mask: 0.0015, loss: nan
2020-12-09 15:26:13,842 - mmdet - INFO - Epoch [2][350/770]	lr: 2.000e-02, eta: 1 day, 0:29:26, time: 1.095, data_time: 0.016, memory: 9402, loss_rpn_cls: 0.3124, loss_rpn_bbox: 0.0691, s0.loss_cls: nan, s0.acc: 1.5820, s0.loss_bbox: nan, s0.loss_mask: 0.2379, s1.loss_cls: nan, s1.acc: 49.1186, s1.loss_bbox: nan, s1.loss_mask: 0.0038, s2.loss_cls: nan, s2.acc: 49.1186, s2.loss_bbox: nan, s2.loss_mask: 0.0019, loss: nan
2020-12-09 15:27:08,085 - mmdet - INFO - Epoch [2][400/770]	lr: 2.000e-02, eta: 1 day, 0:24:18, time: 1.085, data_time: 0.016, memory: 9402, loss_rpn_cls: 0.3009, loss_rpn_bbox: 0.0595, s0.loss_cls: nan, s0.acc: 1.6680, s0.loss_bbox: nan, s0.loss_mask: 0.2531, s1.loss_cls: nan, s1.acc: 49.9116, s1.loss_bbox: nan, s1.loss_mask: 0.0052, s2.loss_cls: nan, s2.acc: 49.9116, s2.loss_bbox: nan, s2.loss_mask: 0.0023, loss: nan
2020-12-09 15:28:01,640 - mmdet - INFO - Epoch [2][450/770]	lr: 2.000e-02, eta: 1 day, 0:18:48, time: 1.071, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.2758, loss_rpn_bbox: 0.0565, s0.loss_cls: nan, s0.acc: 1.8613, s0.loss_bbox: nan, s0.loss_mask: 0.2599, s1.loss_cls: nan, s1.acc: 48.8371, s1.loss_bbox: nan, s1.loss_mask: 0.0075, s2.loss_cls: nan, s2.acc: 48.8371, s2.loss_bbox: nan, s2.loss_mask: 0.0031, loss: nan
2020-12-09 15:28:58,841 - mmdet - INFO - Epoch [2][500/770]	lr: 2.000e-02, eta: 1 day, 0:17:17, time: 1.144, data_time: 0.018, memory: 9402, loss_rpn_cls: 0.3046, loss_rpn_bbox: 0.0683, s0.loss_cls: nan, s0.acc: 1.7148, s0.loss_bbox: nan, s0.loss_mask: 0.2602, s1.loss_cls: nan, s1.acc: 48.0007, s1.loss_bbox: nan, s1.loss_mask: 0.0042, s2.loss_cls: nan, s2.acc: 48.0007, s2.loss_bbox: nan, s2.loss_mask: 0.0017, loss: nan
After Completing the training, I have done inferences on the saved checkpoints.It is giving me empty result, no detection found on the training data as well.Can anybody guide me what could be the reason.Thanks

This is because the loss is Nan and the model training is failed.

This is really a efficient sloution

This is really a efficient soloution


text:
What does the level argument in the Rotate transformation correspond to?

In mmdectection/mmdet/datasets/pipelines/auto_augment.py
the Rotate class is used to apply a transformation to the image. What exactly does the level argument correspond to? In my case a high value of level quickly leads the model to a very low accuracy. Thank you very much.

Feel free to reopen the issue if there is any question.

Hi, @vblua  level represents the discrete rounding level of the augment operation, the larger the value, the stronger the augment.

source: gharchive/issue

authors: hhaAndroid jshilong vblua

repo: open-mmlab/mmdetection

license_type: permissive

license_source: github-api


text:
[Reimplementation] centripetalnet

Prerequisite

[X] I have searched Issues and Discussions but cannot get the expected help.
[X] I have read the FAQ documentation but cannot get the expected help.
[X] The bug has not been fixed in the latest version (master) or latest version (3.x).

💬 Describe the reimplementation questions
I have a question. I am training this on 16 GB graphic card. The memory keeps on maxing out.
Config:
checkpoint_config = dict(interval=10)
log_config = dict(
interval=50,
hooks=[dict(type='TextLoggerHook'),
dict(type='TensorboardLoggerHook')])
custom_hooks = [dict(type='NumClassCheckHook')]
dist_params = dict(backend='nccl')
log_level = 'INFO'
load_from = '/content/drive/MyDrive/Colab Notebooks/Rad_files/Pre-trained Model Checkpoint/centripetalnet_hourglass104_mstest_16x6_210e_coco_20200915_204804-3ccc61e5.pth'
resume_from = None
workflow = [('train', 1)]
opencv_num_threads = 0
mp_start_method = 'fork'
auto_scale_lr = dict(enable=True, base_batch_size=16)
dataset_type = 'NewDataset'
data_root = 'data/'
img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile', to_float32=True),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='PhotoMetricDistortion',
brightness_delta=32,
contrast_range=(0.5, 1.5),
saturation_range=(0.5, 1.5),
hue_delta=18),
dict(
type='RandomCenterCropPad',
crop_size=(511, 511),
ratios=(0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3),
test_mode=False,
test_pad_mode=None,
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='Resize', img_scale=(511, 511), keep_ratio=False),
dict(type='RandomFlip', flip_ratio=0.5),
dict(
type='Normalize',
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels'])
]
test_pipeline = [
dict(type='LoadImageFromFile', to_float32=True),
dict(
type='MultiScaleFlipAug',
scale_factor=1.0,
flip=True,
transforms=[
dict(type='Resize'),
dict(
type='RandomCenterCropPad',
crop_size=None,
ratios=None,
border=None,
test_mode=True,
test_pad_mode=['logical_or', 127],
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='RandomFlip'),
dict(
type='Normalize',
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='ImageToTensor', keys=['img']),
dict(
type='Collect',
keys=['img'],
meta_keys=('filename', 'ori_shape', 'img_shape', 'pad_shape',
'scale_factor', 'flip', 'img_norm_cfg', 'border'))
])
]
data = dict(
samples_per_gpu=1,
workers_per_gpu=1,
train=dict(
type='NewDataset',
ann_file='/content/mmdetection/data/train.txt',
img_prefix=
'/content/drive/MyDrive/Colab Notebooks/Rad_files/Final_testing_images/',
pipeline=[
dict(type='LoadImageFromFile', to_float32=True),
dict(type='LoadAnnotations', with_bbox=True),
dict(
type='PhotoMetricDistortion',
brightness_delta=32,
contrast_range=(0.5, 1.5),
saturation_range=(0.5, 1.5),
hue_delta=18),
dict(
type='RandomCenterCropPad',
crop_size=(511, 511),
ratios=(0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3),
test_mode=False,
test_pad_mode=None,
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='Resize', img_scale=(511, 511), keep_ratio=False),
dict(type='RandomFlip', flip_ratio=0.5),
dict(
type='Normalize',
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels'])
],
data_root='data/'),
val=dict(
type='NewDataset',
ann_file='test.txt',
img_prefix=
'/content/drive/MyDrive/Colab Notebooks/Rad_files/Final_testing_images/',
pipeline=[
dict(type='LoadImageFromFile', to_float32=True),
dict(
type='MultiScaleFlipAug',
scale_factor=1.0,
flip=True,
transforms=[
dict(type='Resize'),
dict(
type='RandomCenterCropPad',
crop_size=None,
ratios=None,
border=None,
test_mode=True,
test_pad_mode=['logical_or', 127],
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='RandomFlip'),
dict(
type='Normalize',
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='ImageToTensor', keys=['img']),
dict(
type='Collect',
keys=['img'],
meta_keys=('filename', 'ori_shape', 'img_shape',
'pad_shape', 'scale_factor', 'flip',
'img_norm_cfg', 'border'))
])
],
data_root='data/'),
test=dict(
type='NewDataset',
ann_file='train.txt',
img_prefix=
'/content/drive/MyDrive/Colab Notebooks/Rad_files/Final_testing_images/',
pipeline=[
dict(type='LoadImageFromFile', to_float32=True),
dict(
type='MultiScaleFlipAug',
scale_factor=1.0,
flip=True,
transforms=[
dict(type='Resize'),
dict(
type='RandomCenterCropPad',
crop_size=None,
ratios=None,
border=None,
test_mode=True,
test_pad_mode=['logical_or', 127],
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='RandomFlip'),
dict(
type='Normalize',
mean=[123.675, 116.28, 103.53],
std=[58.395, 57.12, 57.375],
to_rgb=True),
dict(type='ImageToTensor', keys=['img']),
dict(
type='Collect',
keys=['img'],
meta_keys=('filename', 'ori_shape', 'img_shape',
'pad_shape', 'scale_factor', 'flip',
'img_norm_cfg', 'border'))
])
],
data_root='data/'))
evaluation = dict(interval=2, metric='mAP')
model = dict(
type='CornerNet',
backbone=dict(
type='HourglassNet',
downsample_times=5,
num_stacks=2,
stage_channels=[256, 256, 384, 384, 384, 512],
stage_blocks=[2, 2, 2, 2, 2, 4],
norm_cfg=dict(type='BN', requires_grad=True)),
neck=None,
bbox_head=dict(
type='CentripetalHead',
num_classes=162,
in_channels=256,
num_feat_levels=2,
corner_emb_channels=0,
loss_heatmap=dict(
type='GaussianFocalLoss', alpha=2.0, gamma=4.0, loss_weight=1),
loss_offset=dict(type='SmoothL1Loss', beta=1.0, loss_weight=1),
loss_guiding_shift=dict(
type='SmoothL1Loss', beta=1.0, loss_weight=0.05),
loss_centripetal_shift=dict(
type='SmoothL1Loss', beta=1.0, loss_weight=1)),
train_cfg=None,
test_cfg=dict(
corner_topk=100,
local_maximum_kernel=3,
distance_threshold=0.5,
score_thr=0.05,
max_per_img=100,
nms=dict(type='soft_nms', iou_threshold=0.5, method='gaussian')))
optimizer = dict(type='Adam', lr=6.25e-05)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))
lr_config = dict(
policy='step',
warmup='linear',
warmup_iters=500,
warmup_ratio=0.3333333333333333,
step=[190])
runner = dict(type='EpochBasedRunner', max_epochs=210)
work_dir = '/content/drive/MyDrive/Colab Notebooks/Final thesis implementation/testing for HPC/'
seed = 0
gpu_ids = range(0, 1)
Environment
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_Mar__8_18:18:20_PST_2022
Cuda compilation tools, release 11.6, V11.6.124
Build cuda_11.6.r11.6/compiler.31057947_0
gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Expected results
No response
Additional information

I have changed the batch size and sample per gpu and number of GPUS.

My question is what else can I do to make sure the cuda doesn't max out.

:80: DeprecationWarning: np.long is a deprecated alias for np.compat.long. To silence this warning, use np.compat.long by itself. In the likely event your code does not need to work on Python 2 you can use the builtin int for which np.compat.long is itself an alias. Doing this will not modify any behaviour and is safe. When replacing np.long, you may wish to use e.g. np.int64 or np.int32 to specify the precision. If you wish to review your current use, check the release note link for additional information.
Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
labels = np.array(gt_labels, dtype = np.long),
:82: DeprecationWarning: np.long is a deprecated alias for np.compat.long. To silence this warning, use np.compat.long by itself. In the likely event your code does not need to work on Python 2 you can use the builtin int for which np.compat.long is itself an alias. Doing this will not modify any behaviour and is safe. When replacing np.long, you may wish to use e.g. np.int64 or np.int32 to specify the precision. If you wish to review your current use, check the release note link for additional information.
Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
labels_ignore = np.array(gt_labels_ignore, dtype = np.long))
/content/mmdetection/mmdet/datasets/custom.py:181: UserWarning: CustomDataset does not support filtering empty gt images.
warnings.warn(
2023-02-12 11:43:54,250 - mmdet - INFO - Training with 1 GPU(s) with 1 samples per GPU. The total batch size is 1.
2023-02-12 11:43:54,290 - mmdet - INFO - LR has been automatically scaled from 6.25e-05 to 7.8125e-06
2023-02-12 11:43:54,352 - mmdet - INFO - load checkpoint from local path: /content/drive/MyDrive/Colab Notebooks/Rad_files/Pre-trained Model Checkpoint/centripetalnet_hourglass104_mstest_16x6_210e_coco_20200915_204804-3ccc61e5.pth
2023-02-12 11:43:57,475 - mmdet - WARNING - The model and loaded state dict do not match exactly
size mismatch for bbox_head.tl_heat.0.1.conv.weight: copying a param with shape torch.Size([80, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([162, 256, 1, 1]).
size mismatch for bbox_head.tl_heat.0.1.conv.bias: copying a param with shape torch.Size([80]) from checkpoint, the shape in current model is torch.Size([162]).
size mismatch for bbox_head.tl_heat.1.1.conv.weight: copying a param with shape torch.Size([80, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([162, 256, 1, 1]).
size mismatch for bbox_head.tl_heat.1.1.conv.bias: copying a param with shape torch.Size([80]) from checkpoint, the shape in current model is torch.Size([162]).
size mismatch for bbox_head.br_heat.0.1.conv.weight: copying a param with shape torch.Size([80, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([162, 256, 1, 1]).
size mismatch for bbox_head.br_heat.0.1.conv.bias: copying a param with shape torch.Size([80]) from checkpoint, the shape in current model is torch.Size([162]).
size mismatch for bbox_head.br_heat.1.1.conv.weight: copying a param with shape torch.Size([80, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([162, 256, 1, 1]).
size mismatch for bbox_head.br_heat.1.1.conv.bias: copying a param with shape torch.Size([80]) from checkpoint, the shape in current model is torch.Size([162]).
2023-02-12 11:43:57,501 - mmdet - INFO - Start running, host: root@defd7d612227, work_dir: /content/drive/MyDrive/Colab Notebooks/Final thesis implementation/testing for HPC
2023-02-12 11:43:57,502 - mmdet - INFO - Hooks will be executed in the following order:
before_run:
(VERY_HIGH   ) StepLrUpdaterHook
(NORMAL      ) CheckpointHook
(LOW         ) EvalHook
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
before_train_epoch:
(VERY_HIGH   ) StepLrUpdaterHook
(NORMAL      ) NumClassCheckHook
(LOW         ) IterTimerHook
(LOW         ) EvalHook
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
before_train_iter:
(VERY_HIGH   ) StepLrUpdaterHook
(LOW         ) IterTimerHook
(LOW         ) EvalHook
after_train_iter:
(ABOVE_NORMAL) OptimizerHook
(NORMAL      ) CheckpointHook
(LOW         ) IterTimerHook
(LOW         ) EvalHook
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
after_train_epoch:
(NORMAL      ) CheckpointHook
(LOW         ) EvalHook
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
before_val_epoch:
(NORMAL      ) NumClassCheckHook
(LOW         ) IterTimerHook
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
before_val_iter:
(LOW         ) IterTimerHook
after_val_iter:
(LOW         ) IterTimerHook
after_val_epoch:
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
after_run:
(VERY_LOW    ) TextLoggerHook
(VERY_LOW    ) TensorboardLoggerHook
2023-02-12 11:43:57,505 - mmdet - INFO - workflow: [('train', 1)], max: 210 epochs
2023-02-12 11:43:57,509 - mmdet - INFO - Checkpoints will be saved to /content/drive/MyDrive/Colab Notebooks/Final thesis implementation/testing for HPC by HardDiskBackend.
2023-02-12 11:44:43,735 - mmdet - INFO - Epoch [1][50/267]	lr: 3.115e-06, eta: 13:46:54, time: 0.886, data_time: 0.050, memory: 5608, det_loss: 2086078.5616, off_loss: 0.1355, guiding_loss: 1.8417, centripetal_loss: 4.1235, loss: 2086084.6506, grad_norm: 23140752.8253
2023-02-12 11:45:25,171 - mmdet - INFO - Epoch [1][100/267]	lr: 3.635e-06, eta: 13:19:35, time: 0.829, data_time: 0.007, memory: 5608, det_loss: 2343720.5752, off_loss: 0.2090, guiding_loss: 1.6621, centripetal_loss: 2.0414, loss: 2343724.4511, grad_norm: 28860790.3106
2023-02-12 11:46:07,838 - mmdet - INFO - Epoch [1][150/267]	lr: 4.156e-06, eta: 13:17:41, time: 0.853, data_time: 0.010, memory: 5608, det_loss: 2047569.5397, off_loss: 0.1135, guiding_loss: 1.7654, centripetal_loss: 1.1191, loss: 2047572.5244, grad_norm: 40619034.9787
2023-02-12 11:46:49,428 - mmdet - INFO - Epoch [1][200/267]	lr: 4.677e-06, eta: 13:11:21, time: 0.832, data_time: 0.006, memory: 5608, det_loss: 2232150.2086, off_loss: 0.1471, guiding_loss: 1.8760, centripetal_loss: 1.4499, loss: 2232153.6975, grad_norm: 56373394.0277
2023-02-12 11:47:31,290 - mmdet - INFO - Epoch [1][250/267]	lr: 5.198e-06, eta: 13:08:18, time: 0.837, data_time: 0.009, memory: 5608, det_loss: 2103287.0247, off_loss: 0.1248, guiding_loss: 1.8527, centripetal_loss: 1.3259, loss: 2103290.2750, grad_norm: 36426636.5928
2023-02-12 11:48:29,359 - mmdet - INFO - Epoch [2][50/267]	lr: 5.896e-06, eta: 12:29:33, time: 0.877, data_time: 0.048, memory: 5608, det_loss: 1927522.8200, off_loss: 0.3334, guiding_loss: 1.9894, centripetal_loss: 3.0116, loss: 1927528.1380, grad_norm: 67334702.2778
2023-02-12 11:49:11,173 - mmdet - INFO - Epoch [2][100/267]	lr: 6.417e-06, eta: 12:32:37, time: 0.836, data_time: 0.005, memory: 5608, det_loss: 1334603.5056, off_loss: 0.2475, guiding_loss: 1.7669, centripetal_loss: 2.2110, loss: 1334607.7502, grad_norm: 27412358.3600
2023-02-12 11:49:52,996 - mmdet - INFO - Epoch [2][150/267]	lr: 6.937e-06, eta: 12:34:49, time: 0.836, data_time: 0.006, memory: 5608, det_loss: 1973109.4505, off_loss: 0.3420, guiding_loss: 1.8485, centripetal_loss: 4.4522, loss: 1973116.0530, grad_norm: 61579106.2800
2023-02-12 11:50:34,861 - mmdet - INFO - Epoch [2][200/267]	lr: 7.458e-06, eta: 12:36:28, time: 0.837, data_time: 0.006, memory: 5608, det_loss: 1596720.5911, off_loss: 0.1624, guiding_loss: 1.8463, centripetal_loss: 1.1101, loss: 1596723.6822, grad_norm: 54079553.3647
2023-02-12 11:51:16,618 - mmdet - INFO - Epoch [2][250/267]	lr: 7.813e-06, eta: 12:37:28, time: 0.835, data_time: 0.006, memory: 5608, det_loss: 1708596.8641, off_loss: 0.1886, guiding_loss: 1.7828, centripetal_loss: 1.5210, loss: 1708600.3754, grad_norm: 30750285.0729
[>>>>>>>>>>>>>                    ] 6/15, 0.6 task/s, elapsed: 10s, ETA:    15s
OutOfMemoryError                          Traceback (most recent call last)
 in
18
19 # set the meta to avoid errors for yolo f16
---> 20 train_detector(model, datasets, cfg, distributed=False, validate=True )
21 frames
/content/mmdetection/mmdet/apis/train.py in train_detector(model, dataset, cfg, distributed, validate, timestamp, meta)
244     elif cfg.load_from:
245         runner.load_checkpoint(cfg.load_from)
--> 246     runner.run(data_loaders, cfg.workflow)
/usr/local/lib/python3.8/dist-packages/mmcv/runner/epoch_based_runner.py in run(self, data_loaders, workflow, max_epochs, **kwargs)
134                     if mode == 'train' and self.epoch >= self._max_epochs:
135                         break
--> 136                     epoch_runner(data_loaders[i], **kwargs)
137
138         time.sleep(1)  # wait for some hooks like loggers to finish
/usr/local/lib/python3.8/dist-packages/mmcv/runner/epoch_based_runner.py in train(self, data_loader, **kwargs)
56             self._iter += 1
57
---> 58         self.call_hook('after_train_epoch')
59         self._epoch += 1
60
/usr/local/lib/python3.8/dist-packages/mmcv/runner/base_runner.py in call_hook(self, fn_name)
315         """
316         for hook in self._hooks:
--> 317             getattr(hook, fn_name)(self)
318
319     def get_hook_info(self) -> str:
/usr/local/lib/python3.8/dist-packages/mmcv/runner/hooks/evaluation.py in after_train_epoch(self, runner)
269         """Called after every training epoch to evaluate the results."""
270         if self.by_epoch and self._should_evaluate(runner):
--> 271             self._do_evaluate(runner)
272
273     def _do_evaluate(self, runner):
/content/mmdetection/mmdet/core/evaluation/eval_hooks.py in _do_evaluate(self, runner)
58         # Changed results to self.results so that MMDetWandbHook can access
59         # the evaluation results and log them to wandb.
---> 60         results = single_gpu_test(runner.model, self.dataloader, show=False)
61         self.latest_results = results
62         runner.log_buffer.output['eval_iter_num'] = len(self.dataloader)
/content/mmdetection/mmdet/apis/test.py in single_gpu_test(model, data_loader, show, out_dir, show_score_thr)
27     for i, data in enumerate(data_loader):
28         with torch.no_grad():
---> 29             result = model(return_loss=False, rescale=True, **data)
30
31         batch_size = len(result)
/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1192         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1193                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194             return forward_call(*input, **kwargs)
1195         # Do not call functions when jit is used
1196         full_backward_hooks, non_full_backward_hooks = [], []
/usr/local/lib/python3.8/dist-packages/mmcv/parallel/data_parallel.py in forward(self, *inputs, **kwargs)
49             return self.module(*inputs[0], **kwargs[0])
50         else:
---> 51             return super().forward(*inputs, **kwargs)
52
53     def scatter(self, inputs: ScatterInputs, kwargs: ScatterInputs,
/usr/local/lib/python3.8/dist-packages/torch/nn/parallel/data_parallel.py in forward(self, *inputs, **kwargs)
167
168             if len(self.device_ids) == 1:
--> 169                 return self.module(*inputs[0], **kwargs[0])
170             replicas = self.replicate(self.module, self.device_ids[:len(inputs)])
171             outputs = self.parallel_apply(replicas, inputs, kwargs)
/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1192         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1193                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194             return forward_call(*input, **kwargs)
1195         # Do not call functions when jit is used
1196         full_backward_hooks, non_full_backward_hooks = [], []
/usr/local/lib/python3.8/dist-packages/mmcv/runner/fp16_utils.py in new_func(*args, **kwargs)
117                                 f'method of those classes {supported_types}')
118             if not (hasattr(args[0], 'fp16_enabled') and args[0].fp16_enabled):
--> 119                 return old_func(*args, **kwargs)
120
121             # get the arg spec of the decorated method
/content/mmdetection/mmdet/models/detectors/base.py in forward(self, img, img_metas, return_loss, **kwargs)
172             return self.forward_train(img, img_metas, **kwargs)
173         else:
--> 174             return self.forward_test(img, img_metas, **kwargs)
175
176     def _parse_losses(self, losses):
/content/mmdetection/mmdet/models/detectors/base.py in forward_test(self, imgs, img_metas, **kwargs)
152             # TODO: support test augmentation for predefined proposals
153             assert 'proposals' not in kwargs
--> 154             return self.aug_test(imgs, img_metas, **kwargs)
155
156     @auto_fp16(apply_to=('img', ))
/content/mmdetection/mmdet/models/detectors/cornernet.py in aug_test(self, imgs, img_metas, rescale)
86             img_pair = torch.cat([imgs[ind], imgs[flip_ind]])
87             x = self.extract_feat(img_pair)
---> 88             outs = self.bbox_head(x)
89             bbox_list = self.bbox_head.get_bboxes(
90                 *outs, [img_metas[ind], img_metas[flip_ind]], False, False)
/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1192         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1193                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194             return forward_call(*input, **kwargs)
1195         # Do not call functions when jit is used
1196         full_backward_hooks, non_full_backward_hooks = [], []
/content/mmdetection/mmdet/models/dense_heads/corner_head.py in forward(self, feats)
276         """
277         lvl_ind = list(range(self.num_feat_levels))
--> 278         return multi_apply(self.forward_single, feats, lvl_ind)
279
280     def forward_single(self, x, lvl_ind, return_pool=False):
/content/mmdetection/mmdet/core/utils/misc.py in multi_apply(func, *args, **kwargs)
28     pfunc = partial(func, **kwargs) if kwargs else func
29     map_results = map(pfunc, *args)
---> 30     return tuple(map(list, zip(*map_results)))
31
32
/content/mmdetection/mmdet/models/dense_heads/centripetal_head.py in forward_single(self, x, lvl_ind)
189         br_dcn_offset = self.br_dcn_offsetlvl_ind
190
--> 191         tl_feat_adaption = self.tl_feat_adaption[lvl_ind](tl_pool,
192                                                           tl_dcn_offset)
193         br_feat_adaption = self.br_feat_adaption[lvl_ind](br_pool,
/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1192         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1193                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194             return forward_call(*input, **kwargs)
1195         # Do not call functions when jit is used
1196         full_backward_hooks, non_full_backward_hooks = [], []
/usr/local/lib/python3.8/dist-packages/mmcv/ops/deform_conv.py in forward(self, x, offset)
308             offset = F.pad(offset, (0, pad_w, 0, pad_h), 'constant', 0)
309             offset = offset.contiguous()
--> 310         out = deform_conv2d(x, offset, self.weight, self.stride, self.padding,
311                             self.dilation, self.groups, self.deform_groups,
312                             False, self.im2col_step)
/usr/local/lib/python3.8/dist-packages/mmcv/ops/deform_conv.py in forward(ctx, input, offset, weight, stride, padding, dilation, groups, deform_groups, bias, im2col_step)
90         assert (input.size(0) % cur_im2col_step
91                 ) == 0, 'batch size must be divisible by im2col_step'
---> 92         ext_module.deform_conv_forward(
93             input,
94             weight,
OutOfMemoryError: CUDA out of memory. Tried to allocate 3.59 GiB (GPU 0; 14.76 GiB total capacity; 6.39 GiB already allocated; 1.90 GiB free; 11.51 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

It seems that the error is caused by CUDA out of memory. You can try to reduce the image size or use smaller batch size to avoid the issue.


text:
Voxelnet config

I see Voxelnet class in detectors folder, however, I cannot find the full voxelnet config. I want to train voxelnet. how can I find one?

Actually, Voxelnet is used as the detector of SECOND and PointPillars. you can directly use SECOND or PointPillars config.

authors: ZCMax konyul


text:
[Docs] The results of the validation during training are not consistent with the results of the validation using test.py

Branch
main branch  https://mmdetection3d.readthedocs.io/en/latest/
📚 The doc issue
Hello, I have a question. When I trained the VoteNet on the ScanNet V 2 dataset, the evaluation metrics with training and the time I used test.py to evaluate the same epoch is different. For example, during the whole training process, when I train to the 36th epoch for validation, the results are not consistent with when I use the weights of the 36th epoch and test.py to validate. Why cause this issue? Hope to get your reply! Thanks!
Suggest a potential alternative/fix
No response

Can you provide more detailed information?

Thanks for your quick reply! For the environment, I used
mmcls==0.25.0
mmcv-full==1.6.2
mmdet==2.28.2
mmdet3d==1.0.0rc6
mmsegmentation==0.30.0
pytorch==1.8.1
The question is that, during training, the evaluation results for the 36th epoch is as follows:
+----------------+---------+---------+---------+---------+
| classes        | AP_0.25 | AR_0.25 | AP_0.50 | AR_0.50 |
+----------------+---------+---------+---------+---------+
| cabinet        | 0.5191  | 0.8091  | 0.1579  | 0.4435  |
| bed            | 0.8919  | 0.9383  | 0.8098  | 0.8519  |
| chair          | 0.8930  | 0.9298  | 0.7313  | 0.7990  |
| sofa           | 0.8906  | 0.9794  | 0.7247  | 0.8660  |
| table          | 0.6241  | 0.8486  | 0.4581  | 0.6943  |
| door           | 0.5247  | 0.7323  | 0.2054  | 0.4111  |
| window         | 0.4606  | 0.6773  | 0.1550  | 0.3121  |
| bookshelf      | 0.5354  | 0.8571  | 0.3768  | 0.6364  |
| picture        | 0.1160  | 0.2973  | 0.0143  | 0.0811  |
| counter        | 0.5831  | 0.9423  | 0.2629  | 0.4808  |
| desk           | 0.6424  | 0.9370  | 0.3950  | 0.6772  |
| curtain        | 0.5497  | 0.7910  | 0.1892  | 0.3731  |
| refrigerator   | 0.4641  | 0.9123  | 0.3245  | 0.6491  |
| showercurtrain | 0.7304  | 0.8571  | 0.1596  | 0.3571  |
| toilet         | 0.9627  | 1.0000  | 0.9063  | 0.9310  |
| sink           | 0.5007  | 0.6735  | 0.2423  | 0.3571  |
| bathtub        | 0.8994  | 0.9355  | 0.7641  | 0.8065  |
| garbagebin     | 0.4660  | 0.7000  | 0.2441  | 0.4585  |
+----------------+---------+---------+---------+---------+
| Overall        | 0.6252  | 0.8232  | 0.3956  | 0.5659  |
+----------------+---------+---------+---------+---------+
When I used the weights of the 36th epoch and test.py to validate by the command:
python tools/test.py configs/votenet/votenet_8x8_scannet-3d-18class.py work_dirs/votenet_8x8_scannet-3d-18class_raw/epoch_36.pth --eval mAP
The results are as follows:
+----------------+---------+---------+---------+---------+
| classes        | AP_0.25 | AR_0.25 | AP_0.50 | AR_0.50 |
+----------------+---------+---------+---------+---------+
| cabinet        | 0.5039  | 0.7876  | 0.1730  | 0.4597  |
| bed            | 0.8978  | 0.9506  | 0.8138  | 0.8519  |
| chair          | 0.9021  | 0.9357  | 0.7412  | 0.8012  |
| sofa           | 0.8949  | 0.9794  | 0.7009  | 0.8660  |
| table          | 0.6174  | 0.8543  | 0.4602  | 0.6943  |
| door           | 0.5345  | 0.7409  | 0.2066  | 0.4047  |
| window         | 0.4455  | 0.6879  | 0.1530  | 0.3050  |
| bookshelf      | 0.5421  | 0.8831  | 0.3700  | 0.6494  |
| picture        | 0.1091  | 0.2883  | 0.0277  | 0.0811  |
| counter        | 0.5558  | 0.9038  | 0.2409  | 0.4231  |
| desk           | 0.6385  | 0.9528  | 0.2916  | 0.5748  |
| curtain        | 0.5412  | 0.7761  | 0.2172  | 0.3731  |
| refrigerator   | 0.4699  | 0.9649  | 0.2748  | 0.6316  |
| showercurtrain | 0.7085  | 0.9286  | 0.1482  | 0.3929  |
| toilet         | 0.9536  | 1.0000  | 0.8795  | 0.8966  |
| sink           | 0.5330  | 0.6939  | 0.2799  | 0.4490  |
| bathtub        | 0.9068  | 0.9355  | 0.8380  | 0.8710  |
| garbagebin     | 0.4604  | 0.7245  | 0.2189  | 0.4830  |
+----------------+---------+---------+---------+---------+
| Overall        | 0.6231  | 0.8327  | 0.3909  | 0.5671  |
+----------------+---------+---------+---------+---------+
The results are not consistent. This phenomenon doesn't only occur in the last epoch, it also occurs when I test for the other epochs using the similar command as mentioned above. I would like to know the reason why this problem occurs. Hope to get your reply! Thanks!

Hello, Xiangxu-0103. Thanks for your quick reply! For the environment, I used
mmcls==0.25.0
mmcv-full==1.6.2
mmdet==2.28.2
mmdet3d==1.0.0rc6
mmsegmentation==0.30.0
pytorch==1.8.1
The question is that, during training, the evaluation results for the 36th epoch are as follows:
+----------------+---------+---------+---------+---------+
| classes | AP_0.25 | AR_0.25 | AP_0.50 | AR_0.50 |
+----------------+---------+---------+---------+---------+
| cabinet | 0.5191 | 0.8091 | 0.1579 | 0.4435 |
| bed | 0.8919 | 0.9383 | 0.8098 | 0.8519 |
| chair | 0.8930 | 0.9298 | 0.7313 | 0.7990 |
| sofa | 0.8906 | 0.9794 | 0.7247 | 0.8660 |
| table | 0.6241 | 0.8486 | 0.4581 | 0.6943 |
| door | 0.5247 | 0.7323 | 0.2054 | 0.4111 |
| window | 0.4606 | 0.6773 | 0.1550 | 0.3121 |
| bookshelf | 0.5354 | 0.8571 | 0.3768 | 0.6364 |
| picture | 0.1160 | 0.2973 | 0.0143 | 0.0811 |
| counter | 0.5831 | 0.9423 | 0.2629 | 0.4808 |
| desk | 0.6424 | 0.9370 | 0.3950 | 0.6772 |
| curtain | 0.5497 | 0.7910 | 0.1892 | 0.3731 |
| refrigerator | 0.4641 | 0.9123 | 0.3245 | 0.6491 |
| showercurtrain | 0.7304 | 0.8571 | 0.1596 | 0.3571 |
| toilet | 0.9627 | 1.0000 | 0.9063 | 0.9310 |
| sink | 0.5007 | 0.6735 | 0.2423 | 0.3571 |
| bathtub | 0.8994 | 0.9355 | 0.7641 | 0.8065 |
| garbagebin | 0.4660 | 0.7000 | 0.2441 | 0.4585 |
+----------------+---------+---------+---------+---------+
| Overall | 0.6252 | 0.8232 | 0.3956 | 0.5659 |
+----------------+---------+---------+---------+---------+
When I used the weights of the 36th epoch and test.py to validate by the command:
python tools/test.py configs/votenet/votenet_8x8_scannet-3d-18class.py work_dirs/votenet_8x8_scannet-3d-18class_raw/epoch_36.pth --eval mAP
The results are as follows:
+----------------+---------+---------+---------+---------+
| classes | AP_0.25 | AR_0.25 | AP_0.50 | AR_0.50 |
+----------------+---------+---------+---------+---------+
| cabinet | 0.5039 | 0.7876 | 0.1730 | 0.4597 |
| bed | 0.8978 | 0.9506 | 0.8138 | 0.8519 |
| chair | 0.9021 | 0.9357 | 0.7412 | 0.8012 |
| sofa | 0.8949 | 0.9794 | 0.7009 | 0.8660 |
| table | 0.6174 | 0.8543 | 0.4602 | 0.6943 |
| door | 0.5345 | 0.7409 | 0.2066 | 0.4047 |
| window | 0.4455 | 0.6879 | 0.1530 | 0.3050 |
| bookshelf | 0.5421 | 0.8831 | 0.3700 | 0.6494 |
| picture | 0.1091 | 0.2883 | 0.0277 | 0.0811 |
| counter | 0.5558 | 0.9038 | 0.2409 | 0.4231 |
| desk | 0.6385 | 0.9528 | 0.2916 | 0.5748 |
| curtain | 0.5412 | 0.7761 | 0.2172 | 0.3731 |
| refrigerator | 0.4699 | 0.9649 | 0.2748 | 0.6316 |
| showercurtrain | 0.7085 | 0.9286 | 0.1482 | 0.3929 |
| toilet | 0.9536 | 1.0000 | 0.8795 | 0.8966 |
| sink | 0.5330 | 0.6939 | 0.2799 | 0.4490 |
| bathtub | 0.9068 | 0.9355 | 0.8380 | 0.8710 |
| garbagebin | 0.4604 | 0.7245 | 0.2189 | 0.4830 |
+----------------+---------+---------+---------+---------+
| Overall | 0.6231 | 0.8327 | 0.3909 | 0.5671 |
+----------------+---------+---------+---------+---------+
The results are not consistent. This phenomenon doesn't only occur in the last epoch, it also occurs when I test for the other epochs using the similar command as mentioned above. I would like to know the reason why this problem occurs. Hope to get your reply! Thanks!


text:
Fix misleading workflow role translations

[OO-BUGFIX] Fix wrong translation on workflow rights in group administration
https://github.com/open-orchestra/open-orchestra-cms-bundle/pull/1722
https://github.com/open-orchestra/open-orchestra-workflow-function-bundle/pull/115

:+1:

source: gharchive/pull-request

authors: itkg-nanne itkg-ngilain

license_source: bigquery


text:
Ubuntu and OSX CCI added (implements #41)

Should run OK once liboqs-dotnet is 'followed' in CircleCI (@dstebila to activate).
Ran OK at my CCI account
If you know of other Linux' that should be tested, please let me know: I'll then also streamline this once main-CI-images are updated with dotnet preload.

Great @baentsch! Is this ready? Douglas enabled CCI for this project, right?

Great @baentsch! Is this ready? Douglas enabled CCI for this project, right?

@christianpaquin Yes and Yes on both questions.

authors: baentsch christianpaquin

repo: open-quantum-safe/liboqs-dotnet

license: MIT


text:
Fix removal of duplicate schema

Bug fix / Enhancement
This PR contains removal of duplicate schema entries.

I updated the commit, I had to sign it so it could be merged. Thank you.


text:
Update to Bevy 0.12

New feature implementation
Implemented feature
Closes #192, #128.
Update to Bevy 0.12.
Implementation description
Apart from the usual changed APIs, Bevy 0.12 introduced a virtual rewrite of the asset system that allowed a significant refactor and cleanup of the way we handle assets.
Specifically, the most important feature is support for multiple asset sources, which allows us to split the sources into separate structures, with two main consequences:

The asset source logic is a lot more modular, external plugins can register their sources without having to edit a monolythic piece of code.
The AssetSource enum is a lot cleaner, we can split out the sources that don't necessarily make sense for models (i.e. Bundled, used for icons and OSMTile used for open street map tiles) and put them in their own asset source.

Specifically for Bundled assets, the new asset system introduced a builtin embedded:// asset source that does exactly the same so we can get rid of more code.
Because of #128, it was necessary to move out of surf. Luckily a new crate came up recently, ehttp which is actively maintained, does the job perfectly fine and is very lightweight (our dependency count decreased by about 100 crates by switching!)

There is currently a regression in workcell editor mode where the cursor is always displayed, currently investigating

This PR is now ready for review.
Since this migration added a lot more deprecation warnings with the deprecation of event.iter() I took the chance to clear out all the trivial warnings from the codebase so we can avoid introducing new ones (they would get drowned in the 100+ existing warnings).
The only remaining ones now are nameclash collisions (also introduced here, although not breaking, for now) and one unused field that sounded not trivial.


text:
Chore: Remove process manager

Process manager wont be needed because executor will have restart policy: https://github.com/open-runtimes/executor/pull/90

Fun fact, it also removes a deprecation warning 😁

repo: open-runtimes/open-runtimes


text:
feat: default explore topic matches user interest

What type of PR is this? (check all applicable)

[ ] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Description
I fetched the value of the user's interests from the database using useFetchUser(), which indicates the language they are interested in and set it as their default topic.

Related Tickets & Documents
Fixes #929

Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

It tries to add all topics. Should just grab the first.

@brandonroberts  I just noticed this line has not been updated. Was it intentional?

@shamimbinnur it was not intentional. It got changed accidentally while resolving some merge conflicts. It should be reapplied

authors: bdougie brandonroberts shamimbinnur

repo: open-sauced/insights


text:
Feature: backfill top level unit tests

Suggested solution
We should have a some sanity tests that execute the command run functions to ensure the help is being outputted correctly and there aren't any major bugs preventing the CLI from running properly (like incorrectly named / put together flags)
Related: #126

Have to sort something else out first. Will get back on this unless someone else picks it up first.

authors: jpmcb nickytonline

repo: open-sauced/pizza-cli


text:
[Bug] 404 error when clicked on the Live Status link on the first line of README.md

Describe the bug
Clicking on the Live Status link on README.md leads to a 404 Not Found page.
To Reproduce
Steps to reproduce the behavior:

Go to the repository home page at https://github.com/open-sauced/status
Click on the Live Status link on the rendered README.md file.
The page redirects to the URL: https://deadreyo.github.io/upptime-test which is incorrect
Also, clicking on the link in the About section of the repository leads to the the wrong page.

Expected behavior
The page should point to https://status.opensauced.pizza/
Screenshots

Desktop (please complete the following information):

OS: All OS
Browser: All Browsers
Version: All Versions

Smartphone (please complete the following information):

Device: All devices
OS: All OS
Browser: All Browsers
Version: All versions

Additional context
Clicking on the link in the About section of the repository also leads to the the wrong page. This also needs to be updated by the Maintainer

Well spotted! Same as https://github.com/open-sauced/status/issues/19.
Feel free to take it

There are a number of places where it looks like that dead link is present:
❯ rg "https://Deadreyo.github.io/upptime-test"
README.md
1:# [📈 Live Status](https://Deadreyo.github.io/upptime-test): <!--live status--> **🟩 All systems operational**
11:With [Upptime](https://upptime.js.org), you can get your own unlimited and free uptime monitor and status page, powered entirely by a GitHub repository. We use [Issues](https://github.com/Deadreyo/upptime-test/issues) as incident reports, [Actions](https://github.com/Deadreyo/upptime-test/actions) as uptime monitors, and [Pages](https://Deadreyo.github.io/upptime-test) for the status page.

We should fix all of them in one sweep so we don't keep having this issue opened.

@jpmcb @takanome-dev I updated the README.md file with the recommended fixes into a branch checked out from main. However, I am not able to push my branch. Is there any security check in place that would allow me to push to the repository only if I am added to it first? Kindly let me know, so that I may open the PR for the same.
Thanks 😁

That sounds like you didn't fork this repo. Try the following steps:

fork the repo
clone the forked repository to your local machine.
check out a new branch and make the changes
commit and push your changes in your branch
open a pr

For more info, see our docs

This PR https://github.com/open-sauced/status/pull/22 fixes it.

authors: adybose jpmcb takanome-dev

repo: open-sauced/status


text:
Additions to continuous integration

Tests for second ultrasonic sensor and atlas water quality DO sensor
New badges for readme
Dump influxdb logs for the current build into Jenkins
Add a sleep timer to Jenkins build queries

Note that current queries to influxdb from Jenkins are based on the build time rather than the program time. This should be fixed in the future.

repo: open-storm/perfect-cell

license: mit


text:
Pack binary with upx

Component(s)
No response
Describe the issue you're reporting
The opentelemetry-collector-contrib container image is already well optimized by using FROM scratch^1. But by using upx to compress the otelcontribcol binary before copying it to the final container image would allow us to save even more.
Building locally with make docker-otelcontribcol I get the following container image:
$ docker inspect -f "{{.Size}}" docker.io/library/otelcontribcol | numfmt --to=si
341M

Compressing the otelcontribcol binary with upx --best as part of the build I get:
$ docker inspect -f "{{.Size}}" docker.io/library/otelcontribcol | numfmt --to=si
127M

That's a decrease of 214MB or 63%. Looking at the total number of container image downloads of the 0.93.0 tag, which has ~60k downloads, that equates to ~13TB overall.
The main downside is that this increases the build time drastically, so this could only really be used for tagged version builds.

Hey, transferring this to our releases repository, where the Docker images are actually built :) How does upx interact with security scanners? I have heard stories of upx leading to antivirus flagging some years ago, I wonder if that still holds today

I ran a scan with trivy for the currently published image, and returned no results. So it puts the image in no worse position than it is now:
$ trivy image ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:0.93.0
2024-02-09T11:32:22.850-0800    INFO    Need to update DB
2024-02-09T11:32:22.850-0800    INFO    DB Repository: ghcr.io/aquasecurity/trivy-db
2024-02-09T11:32:22.850-0800    INFO    Downloading DB...
42.80 MiB / 42.80 MiB [---------------------------------------------------------------------] 100.00% 32.44 MiB p/s 1.5s
2024-02-09T11:32:25.262-0800    INFO    Vulnerability scanning is enabled
2024-02-09T11:32:25.262-0800    INFO    Secret scanning is enabled
2024-02-09T11:32:25.262-0800    INFO    If your scanning is slow, please try '--scanners vuln' to disable secret scanning
2024-02-09T11:32:25.262-0800    INFO    Please see also https://aquasecurity.github.io/trivy/dev/docs/scanner/secret/#recommendation for faster secret detection
2024-02-09T11:32:28.117-0800    INFO    Number of language-specific files: 0

As for antivirus false positives, there is a pinned issue about them in the upx repo: https://github.com/upx/upx/issues/437. It is a risk, but 9 false positives over 3+ years seems relatively low.

@JamieMagee Your test shows that it does not introduce any false positives (that sounds unlikely), what I am wondering is if it introduces false negatives (effectively, if it obfuscates the binary in some way that makes trivy and friends not detect real issues.
cc @open-telemetry/sig-security-maintainers

We used to have this in the first versions we released using goreleaser, but it caused problems with the binaries for Darwin. I can't find the issue right now to have a reference, but if we do run upx on the binaries, we should make sure the final executables are tested before releasing them.

authors: JamieMagee jpkrohling mx-psi


text:
feat(auto-instrumentation-node): add undici instrumentation

Which problem is this PR solving?

auto-instrumentations-node is expected to include all instrumentations in js and js-contrib, but didn't yet have the newly created and published undici

Short description of the changes

add undici instrumentation to auto-instrumentations-node package

Note: As I understand it, we haven't had an official "release" of undici instrumentation, but we recently found that new packages like this still got published on npm due to a misconfiguration in our workflows.
Also, I couldn't recall if there was a reason to delay adding this to the package (like since it's still so new), but figured I'd open the PR either way because I didn't see it otherwise.

Thanks @JamieDanielson , can you please resolve the conflicts so this can merge?

I think this is good to go, but unsure if I should hold off for a maintainer to merge as they are assigned component owners (I am but a lowly approver 😃 )

I think this is good to go, but unsure if I should hold off for a maintainer to merge as they are assigned component owners (I am but a lowly approver 😃 )

Not sure about the formalities, but since it already has 3 approves and is open for more than a week, I think it's safe to merge 👍

authors: JamieDanielson blumamir

repo: open-telemetry/opentelemetry-js-contrib


text:
Learn how to instrument NGINX with OpenTelemetry article Node.js program cannot be executed

I followed this blog step by step, and encountered the following problem in the final frontend Node.js. When the frontend finished running docker, the following error would be displayed:

I tried adapting the Node.js program to:
const opentelemetry = require('@opentelemetry/sdk-node');
const {
  getNodeAutoInstrumentations,
} = require('@opentelemetry/auto-instrumentations-node');
const {
  OTLPTraceExporter,
} = require('@opentelemetry/exporter-trace-otlp-http');
const express = require('express');
const http = require('http');

const sdk = new opentelemetry.NodeSDK({
  traceExporter: new OTLPTraceExporter(),
  instrumentations: [getNodeAutoInstrumentations()],
});

(async () => {
  await sdk.start();

  const app = express();

  app.get('/', (_, response) => {
    const options = {
      hostname: 'nginx',
      port: 80,
      path: '/',
      method: 'GET',
    };
    const req = http.request(options, (res) => {
      console.log(`statusCode: ${res.statusCode}`);
      res.on('data', (d) => {
        response.send('Hello World');
      });
    });
    req.end();
  });

  app.listen(8000, () => {
    console.log('Listening for requests on port 8000');
  });
})();

After the adjustment, the program can work normally, and other content is the same as the article, but after running, the following picture content will be displayed on jaeger, which is different from the article

Please help again, thank you

@880831ian when the blog post was written the API for sdk.start() was async, which is not the case anymore. You should be fine by just doing sdk.start()
Your frontend application is not showing up in jaeger, you may need to find out if the spans are sent successfully, here is how you can debug a JS application:
https://opentelemetry.io/docs/instrumentation/js/getting-started/nodejs/#troubleshooting

Oh no, I found the reason. It is because my adjusted Node.js also has an error. I modified the code to the following to display frontend on jaeger !
const opentelemetry = require('@opentelemetry/sdk-node');
const {
  getNodeAutoInstrumentations,
} = require('@opentelemetry/auto-instrumentations-node');
const {
  OTLPTraceExporter,
} = require('@opentelemetry/exporter-trace-otlp-http');

const initAndStartSDK = async () => {
  const sdk = new opentelemetry.NodeSDK({
    traceExporter: new OTLPTraceExporter(),
    instrumentations: [getNodeAutoInstrumentations()],
  });

  await sdk.start();
  return sdk;
};

const main = async () => {
  try {
    const sdk = await initAndStartSDK();
    const express = require('express');
    const http = require('http');
    const app = express();
    app.get('/', (_, response) => {
      const options = {
        hostname: 'nginx',
        port: 80,
        path: '/',
        method: 'GET',
      };
      const req = http.request(options, (res) => {
        console.log(`statusCode: ${res.statusCode}`);
        res.on('data', (d) => {
          response.send('Hello World');
        });
      });
      req.end();
    });
    app.listen(8000, () => {
      console.log('Listening for requests');
    });
  } catch (error) {
    console.error('Error occurred:', error);
  }
};

main();

Can I open a PR to replace the Node.js code of the article~

Can I open a PR to replace the Node.js code of the article~

Sure, go ahead! Thank you:-)


text:
[es-dev-server] Rewrite file request fails in 1.7.1

Request url: '/muro' fails.
Log:
 Error: Invalid config: missing config.entries       at createIndexHTML (C:\Users\jorge\My Tresors\Documentos\Webs\Toiwall\node_modules\@open-wc\building-utils\index-html\create-index-html.js:151:11)       at getTransformedIndexHTML (C:\Users\jorge\My Tresors\Documentos\Webs\Toiwall\node_modules\es-dev-server\dist\utils\transform-index-html.js:42:51)       at transformIndexHTMLMiddleware (C:\Users\jorge\My Tresors\Documentos\Webs\Toiwall\node_modules\es-dev-server\dist\middleware\transform-index-html.js:107:77)          at processTicksAndRejections (internal/process/task_queues.js:89:5)       at async messageChannelMiddleware (C:\Users\jorge\My Tresors\Documentos\Webs\Toiwall\node_modules\es-dev-server\dist\middleware\message-channel.js:104:5)              at async cacheMiddleware (C:\Users\jorge\My Tresors\Documentos\Webs\Toiwall\node_modules\es-dev-server\dist\middleware\cache.js:14:5)
In 1.6.7 works.
module.exports = {
    port: 8081,
    appIndex: 'panel.html',
    nodeResolve : true,
    customMiddlewares: [
        function rewriteIndex(context, next) {
            if (context.url === '/') {
                context.url = '/portada.html';
            }
            if (context.url === '/muro') {
                context.url = '/muro/index.html';
            }

          return next();
        }
    ]
}

Please try with 1.7.2!

@LarsDenBakker 1.7.2 isn't out yet if I checked correctly, did you push the tag?

Hmm looks like the CI on master failed. I've rerun the CI and it's there now

authors: Laincito LarsDenBakker pdesjardins90

repo: open-wc/open-wc


text:
feat: update to Lit3

What I did

Update lit-element to 3.0.x
Update lit-html to 2.x.x

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

superseded by https://github.com/open-wc/open-wc/pull/2136

authors: CLAassistant Knorgias daKmoR


text:
feat: add clickable link to citation

Pull Request Checklist
Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.
Before submitting, make sure you've checked the following:

[x] Target branch: Please verify that the pull request targets the dev branch.
[x] Description: Provide a concise description of the changes made in this pull request.
[x] Changelog: Ensure a changelog entry following the format of Keep a Changelog is added at the bottom of the PR description.
[ ] Documentation: Have you updated relevant documentation Open WebUI Docs, or other documentation sources?
[ ] Dependencies: Are there any new dependencies? Have you updated the dependency versions in the documentation?
[ ] Testing: Have you written and run sufficient tests for validating the changes?
[x] Code review: Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards?
[x] Prefix: To cleary categorize this pull request, prefix the pull request title, using one of the following:

BREAKING CHANGE: Significant changes that may affect compatibility
build: Changes that affect the build system or external dependencies
ci: Changes to our continuous integration processes or workflows
chore: Refactor, cleanup, or other non-functional code changes
docs: Documentation update or addition
feat: Introduces a new feature or enhancement to the codebase
fix: Bug fix or error correction
i18n: Internationalization or localization changes
perf: Performance improvement
refactor: Code restructuring for better maintainability, readability, or scalability
style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc.)
test: Adding missing tests or correcting existing tests
WIP: Work in progress, a temporary label for incomplete or ongoing work

Changelog Entry
Description

This feature makes the source field of a citation clickable if it begins with http:// or https://

Added

URLs in citation sources are now clickable

Screenshots or Videos

this should also use Files API whenever it can!

Would be happy to alter this and resubmit so it's more useful.
I worry a little bit that if I guess at the expectation for how this should use the files API I'll get it wrong since I'm a first time contributor. Happy to be learning more about the project!
@tjbck could you or someone else point me in the right direction? Here are the things I think it might be:

There should be a function inside the files API that determines if something is a URL or a file.
There's already some commonly stored information in file metadata that says if a file is a URL.
A PR touching this code should also make it so that if the source is a file, when a user clicks the file it should download the file.

authors: Seth-Rothschild tjbck

repo: open-webui/open-webui


text:
ATLT-Config-Json: BasicAuth is missing

From Paul Bittenburg:
Mentopolis ist noch aufgefallen, dass in der ATLT-Config-Json ein Forwarding für die Basic-Auth Authentifizierung fehlt („OamRequestCausesInquiryForAuthentication“). Das müsste über die Spec behoben werden, wir übernehmen das dann in unsere Config.
Die Basic-Auth Authentifizierung wird für die generischen Schnittstellen wie z.B. „/core-model-1-4:control-construct“ verwendet.

Das Forwarding gibt es auch beim NotificationProxy, das muss an folgenden Stellen hinzugefügt werden:

fowardingList
configFile/loadFile
oas (callback unter /v1/inquire-oam-request-approvals)

Das kann man direkt vom NotificationProxy übernehmen, man muss nur die uuids anpassen (also statt np-1-0-0 dann atlt-1-0-0) und die TAC-App heißt jetzt nicht mehr AdministratorAdministration, sondern AccessAdministration:
forwardingList
  - forwarding-name: OamRequestCausesInquiryForAuthentication
    uuid: atlt-1-0-0-op-fc-bm-004
    forwarding-type: InvariantProcessSnippet
    management-requests:
      operation-client-update:
        - server-name: /v1/inquire-oam-request-approvals
          uuid: atlt-1-0-0-op-s-bm-005
      fc-port-update:
        - server-name: /v1/inquire-oam-request-approvals
          uuid: atlt-1-0-0-op-s-bm-005
      fc-port-deletion:
      operation-client-deletion:
    initiating-requests:
    consequent-requests:
      - client-name: AccessAdministration://v1/approve-oam-request
        uuid: atlt-1-0-0-op-c-bs-aa-2-0-1-000

configFile (loadFile analog, aber vorne mit den zusätzlichen Tabs):
          {
            "uuid": "atlt-1-0-0-op-fc-bm-004",
            "name": [
              {
                "value-name": "ForwardingKind",
                "value": "core-model-1-4:FORWARDING_KIND_TYPE_INVARIANT_PROCESS_SNIPPET"
              },
              {
                "value-name": "ForwardingName",
                "value": "OamRequestCausesInquiryForAuthentication"
              }
            ],
            "fc-port": [
              {
                "local-id": "000",
                "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT",
                "logical-termination-point": "atlt-1-0-0-op-s-bm-005"
              },
              {
                "local-id": "200",
                "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT",
                "logical-termination-point": "atlt-1-0-0-op-c-bs-aa-2-0-1-000"
              }
            ]
          },

oas callback unter /v1/inquire-oam-request-approvals

      callbacks:
        OamRequestCausesInquiryForAuthentication:
          url: #[/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address or /core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]:[/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-op-c-bs-aa-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]
            post:
              parameters:
                - $ref: '#/components/parameters/user'
                - $ref: '#/components/parameters/originator'
                - $ref: '#/components/parameters/x-correlator'
                - $ref: '#/components/parameters/trace-indicator'
                - $ref: '#/components/parameters/customer-journey'
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      type: object
                      required:
                        - application-name
                        - release-number
                        - Authorization
                        - method
                      properties:
                        application-name:
                          type: string
                          description: >
                            'Own application name for the AccessAdministration to check, whether this application is part of the SDN at all
                            from [/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]'
                        release-number:
                          type: string
                          description: >
                            'Own application release number for the AccessAdministration to check, whether this application is part of the SDN at all
                            from [/core-model-1-4:control-construct/logical-termination-point=atlt-1-0-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]'
                        Authorization:
                          type: string
                          description: >
                            'Authorization code of the administrator addressing the OaM request to this application from [parameters::Authorization]'
                        method:
                          type: string
                          description: 'Method applied in the OaM request, which is to be recorded'
                      example:
                        application-name: 'OwnApplicationName'
                        release-number: '1.0.0'
                        Authorization: 'Basic PEJhc2ljIEF1dGggVXNlcm5hbWU+OjxCYHduEdBBdXRoIFBhc3N3b3JkPg=='
                        method: 'PUT'
              responses:
                '200':
                  description: 'Response on inquiry for approval of an OaM request provided'
                  content:
                    application/json:
                      schema:
                        type: object
                        required:
                          - oam-request-is-approved
                        properties:
                          oam-request-is-approved:
                            type: boolean
                          reason-of-objection:
                            type: string
                            enum:
                              - 'APPLICATION_NAME_UNKNOWN'
                              - 'RELEASE_NUMBER_UNKNOWN'
                              - 'AUTHORIZATION_CODE_UNKNOWN'
                              - 'METHOD_NOT_ALLOWED'
                              - 'UNKNOWN'
                            description: >
                              'This attribute to be represented, if response::oam-request-is-approved==false.
                              Reasons to be checked and indicated according to the sequence defined in the enumeration.'
                      examples:
                        True:
                          value:
                            oam-request-is-approved: true
                        False:
                          value:
                            oam-request-is-approved: false
                            reason-of-objection: 'AUTHORIZATION_CODE_UNKNOWN'
                  headers:
                    x-correlator:
                      schema:
                        type: string
                        example: '550e8400-e29b-11d4-a716-446655440000'
                      description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request'
                    exec-time:
                      schema:
                        type: integer
                        example: 1100
                      description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds'
                    backend-time:
                      schema:
                        type: integer
                        example: 850
                      description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds'
                    life-cycle-state:
                      schema:
                        type: string
                        enum:
                          - 'EXPERIMENTAL'
                          - 'OPERATIONAL'
                          - 'DEPRECATED'
                          - 'OBSOLETE'
                          - 'UNKNOWN'
                          - 'NOT_YET_DEFINED'
                        example: 'EXPERIMENTAL'
                      description: 'Life cycle state of the consumed service'
                '400':
                  $ref: '#/components/responses/responseForErroredServiceRequests'
                '401':
                  $ref: '#/components/responses/responseForErroredServiceRequests'
                '403':
                  $ref: '#/components/responses/responseForErroredServiceRequests'
                '404':
                  $ref: '#/components/responses/responseForErroredServiceRequests'
                '500':
                  $ref: '#/components/responses/responseForErroredServiceRequests'
                default:
                  $ref: '#/components/responses/responseForErroredServiceRequests'

authors: ThomasSeitz kmohr-soprasteria


text:
unable to fetch the MAC table for few devices where it is throwing error with body structure is not correct

Observing " Writing operation into Elastic Search Failed : body structure is not correct from element" in docker logs, whereas for the same node we are able to retrieve the MAC table from Controller.
Docker Logs:
500 - Error: Writing operation into Elastic Search Failed : body structure is not correct from element (I time) 529253447 Resend the request....
500 - Error: Writing operation into Elastic Search Failed : body structure is not correct from element (II time) 529253447 --> Dropped from Sliding Window

ODL output:
{
    "mac-fd-1-0:output": {
        "mac-table-entry-list": [
            {
                "mac-address": "8c:68:3a:01:ed:df",
                "vlan-id": "1520",
                "egress-ltp": "LTP-MACINTERFACE-TTP-3-1",
                "affected-mac-fd": "FD-MAC-1-1"
            },

in the callback PromptForUpdatingMacTableFromDeviceCausesWritingIntoElasticSearch there is a check which control that the body message is complete, in particular it should contain:

a body
the body should contain a field "mac-address"
the field "mc-address" should be an array with length > 0
the array should contain "mount-name" field.

If one of this conditions are not present the application exit with the message reported in the bug

@SIAE team: Pls fix this issue on higher priority as the number of failures in production is more than 1700.

authors: Ziabatcha nardecchia-siae ssomasundara

repo: openBackhaul/MacAddressTableRecorder


text:
LocalProtocol and RemoteProtocol values in CONFIGfile to follow ONF notation

As per issue https://github.com/openBackhaul/ApplicationPattern/issues/519, local-protocol and remote-protocol attributes in config file shall be updated according to ONF format
enum:

'tcp-server-interface-1-0:PROTOCOL_TYPE_HTTP'
'tcp-server-interface-1-0:PROTOCOL_TYPE_HTTPS'
'tcp-server-interface-1-0:PROTOCOL_TYPE_NOT_YET_DEFINED'

enum:

'tcp-client-interface-1-0:PROTOCOL_TYPE_HTTP'
'tcp-client-interface-1-0:PROTOCOL_TYPE_HTTPS'
'tcp-client-interface-1-0:PROTOCOL_TYPE_NOT_YET_DEFINED'

Changed as proposed.

Pull-request #153 merged.

authors: IswaryaaS openBackhaul

repo: openBackhaul/OperationKeyManagement


text:
Remove test case folder after adding Postman export on main page

Remove test case folder after adding Postman export on main page

Added test cases in main page and removed the additional test-suite folder in pull#53

No test case folder found.

repo: openBackhaul/TypeApprovalRegister


text:
Missing data in Edmonton, Canada

Big city, no data. @justinelliotmeyers you want to take a look?

don't see on their open data portal. e-mailed them and tweeted to see if they have data. Will look to see if there is a REST somewhere.

also requested parcels: assessment@edmonton.ca

here she is! https://data.edmonton.ca/City-Administration/Property-Information-Data/dkk9-cj3x

authors: justinelliotmeyers nvkelso

repo: openaddresses/openaddresses


text:
Can't get the same FID as the checkpoint on cifar-10

Thanks for your great work. I try to train a diffusion model on cifar-10. I used the following parameters:
MODEL_FLAGS="--image_size 32 --num_channels 128 --num_res_blocks 3 --learn_sigma True --dropout 0.3"
DIFFUSION_FLAGS="--diffusion_steps 4000 --noise_schedule cosine"
TRAIN_FLAGS="--lr 1e-4 --batch_size 128"

During the test phase, I sample 50k Image with 100 diffuison steps and compute FID with the training set. However, I get FID=6.7 which higher than the FID (3.7) obtained by checkpoint
How can I get the same FID?

Any updates @z562 ?

Any updates @z562 ?

I tried other settings, their FID is around 4.0 but failed to reach the results in the paper.  :(

@z562  Can you share your FID calculation code?

@z562 Can you share your FID calculation code?

https://github.com/openai/guided-diffusion/tree/main/evaluations

@z562 I also get a similar FID of around 7 under the given settings. Can you share your new settings when FID is around 4.0?

@z562 I also get a similar FID of around 7 under the given settings. Can you share your new settings when FID is around 4.0?

I use the --dropout 0.1 and --noise_schedule cosine

Stupid question here: Is the FID computed in the test or in the training set?

I tried using mseitzer/pytorch-fid and got only 11.379320395008278.
I sampled 50k images using
python scripts/image_sample.py --model_path cifar10_uncond_vlb_50M_500K.pt --image_size 32 --num_channels 128 --num_res_blocks 3 --learn_sigma True --dropout 0.3 --diffusion_steps 4000 --noise_schedule cosine --use_kl True --batch_size 1000 --num_samples 50000

and fid was computed against the 50k training images.

I got 47.87 using the following settings:
--image_size 32 --num_channels 128 --num_res_blocks 3 --diffusion_steps 1000 --noise_schedule linear --lr 1e-4 --batch_size 64
I trained the model on 4 GPUs for 500K iterations as denoted by Table 2 in the paper where the reported FID was 3.29. Could anyone give me some ideas on how to train a model for the first setting in Table 2?

Why is it that I used the same operation as you again, but the FID result is over 60, can you give me the source code of your FID calculation?

Why is it that I used the same operation as you again, but the FID result is over 60, can you give me the source code of your FID calculation?

The sample.py file got the [0,256] npz file, which I then reduced to the same [-1,1] file as data_npz/cifar10.test.npz using images = (images.astype(np.float32)/ 127.5) - 1.0. Then I calculate their mean and variance with incention network and finally with FID formula, can you tell me what went wrong? Thank you very much!

In my case hyperparameters were the case. I tested a few different implementations of FID - even though the metric value can differ, FID of 50 is too big. I missed the thing where the number of steps depends on the batch_size (mine was 4, the paper uses 128 - obv my model wasn't trained long enough). Furthermore, I tried to train class conditional CIFAR10 model. I found out that conditioning on class lowers the FID significantly with the same number of training steps - probably needs to be trained for much longer.

How to generate the reference dataset npz files?

Why is it that I used the same operation as you again, but the FID result is over 60, can you give me the source code of your FID calculation?

The sample.py file got the [0,256] npz file, which I then reduced to the same [-1,1] file as data_npz/cifar10.test.npz using images = (images.astype(np.float32)/ 127.5) - 1.0. Then I calculate their mean and variance with incention network and finally with FID formula, can you tell me what went wrong? Thank you very much!

How to get  data_npz/cifar10.test.npz?

Why is it that I used the same operation as you again, but the FID result is over 60, can you give me the source code of your FID calculation?

The sample.py file got the [0,256] npz file, which I then reduced to the same [-1,1] file as data_npz/cifar10.test.npz using images = (images.astype(np.float32)/ 127.5) - 1.0. Then I calculate their mean and variance with incention network and finally with FID formula, can you tell me what went wrong? Thank you very much!

How to get data_npz/cifar10.test.npz?

https://github.com/mseitzer/pytorch-fid/tree/master

Was anyone able to figure out how to get the same results as the paper for this FID benchmark? @z562 any updates?

authors: LuoBingjun adistomar akrlowicz bigwahaha je-santos njuaplusplus z562 zcspike

repo: openai/improved-diffusion


text:
Rename How_to_call_functions_with_Chat_models.ipynb to How_to_call_fu…

…nctions_with_chat_models.ipynb

@ted-at-openai @colin-jarvis @joe-at-openai I already updated the docs to be lowercase.

repo: openai/openai-cookbook


text:
Predicate pipelined ops more comprehensively

The assertion assert("don't know how to predicate this op" && false) is caused by MatmulLoopPipeline.cpp:predicateOp not taking into account ttg::AllocTensorOp as an operation with memory side effects.
At a high level the problem occurs when the loop iterations are fewer than the pipeline stages. In that case triton needs to emit a prologue that is masked to only perform #iterations ops rather than #stages ops.

Thanks for the PR!
Is it possible to add a unit test so we don't regress this in the future?

That doesn't sound right, the alloc should be outside the loop so I'm not sure why we would be trying to predicate it.
Could you share an example in python or in IR exposing this problem?

My understanding is that operations are predicted the prologue, before the for loop, but I will triple check. I am under the impression that we are hitting this when there are more iterations than stages. Is there a simple test for op predication that I can base my unit tests on? (because my example is a fairly complicated kernel that I can't share)
…
On Mon, Nov 13, 2023, 5:50 PM Thomas Raoux @.> wrote: That doesn't sound right, the alloc should be outside the loop so I'm not sure why we would be trying to predicate it. Could you share an example in python or in IR exposing this problem? — Reply to this email directly, view it on GitHub <#2646 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BCOCUW3GFJR3NSWZM64BWNTYEJMYDAVCNFSM6AAAAAA7JQ2C4WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMBYGY3TMNZTHE . You are receiving this because you authored the thread.Message ID: @.>

That's true for operation in the loop but alloc is created outside the loop so it should be unaffected by the expander. The existing tests will generate predicate (basically there would always be predicate when the loop boundary is dynamic) but the alloc would be outside of the loop.
Can you try to figure out why the alloc op is being pipelined at all in your case? Maybe we accidentally pipeline an outer loop?

Triton builds a triton-reduce binary that you might be able to use to reduce your testcase too?

Thanks for your comments! I will investigate precisely what causes this and come back with tests and hopefully a better solution.

I think I figured out what is going on: The problem appears if the code looks like this
for {
  %a = load()
  for {
    %b = load()
    dot(%a, %b)
  }
}

First the inner `for

ok, yes the problem is that we shouldn't pipeline the outer loop. Can you add some better pre-condition so that only the inner loop is pipelined.
I think the best solution is to scan the loop and bail out if there are any control flow in it.

I think it makes sense.
To make what you are saying more explicit: if the inner loop was pipelined there the low latency storage is depleted and there is no point pipelining outer loops. Right?
If that is the case, how about if we abort pipelining if we find an ttg.alloc_tensor call (ie. ttg.alloc_tensor => something was pipelined deeper down => no need to pipeline at the current level)?

I think it makes sense.
To make what you are saying more explicit: if the inner loop was pipelined there the low latency storage is depleted and there is no point pipelining outer loops. Right?
If that is the case, how about if we abort pipelining if we find an ttg.alloc_tensor call (ie. ttg.alloc_tensor => something was pipelined deeper down => no need to pipeline at the current level)?

In general pipelining is meant to be applied on the inner loop only. Considering the way we do it, we could make it work for an outer loop but I think it rarely makes sense. Checking for ttg.alloc_tensor would require making sure we pipeline the loops in a certain order. I don't think it is worth the extra logic.

I think we are on the same page now. How does this look?
TL;DR: Whenever it successfully pipelines a for loop it "disqualifies" all enclosing for loops from the process. It also makes sure the loops are processed in a post order fashion (due to lack of in-order).
(I don't have immediate access to a GPU so I didn't run the tests yet)

I think we are on the same page now. How does this look? TL;DR: Whenever it successfully pipelines a for loop it "disqualifies" all enclosing for loops from the process. It also makes sure the loops are processed in a post order fashion (due to lack of in-order).
(I don't have immediate access to a GPU so I didn't run the tests yet)

I would prefer to be more conservative at the moment and skip any kind of outer loops.

I had something a little different in mind, let me upload it in a min, it will be easier than back and forth.

Thanks!

Thanks for catching the bug and contributing!

authors: ThomasRaoux cperivol jlebar

repo: openai/triton


text:
Why doesn’t OpenAI use NX server instead (e.g. Google’s NeatX) of VNC?

Link:

NeatX (Google): https://code.google.com/archive/p/neatx/ (Python)
X2Go: http://wiki.x2go.org/doku.php/about:start (Python)

Look at this article:
http://www.keycruncher.com/blog/2008/07/07/vnc-vs-nomachine-nx-nomachine-wins-hands-down/1
Have you weighed the pros and cons of using VNC versus NX and other open-source remote desktop software protocols?

We haven't seriously considered them. For games, where most of the pixels in the game window change every cycle, they don't have obvious advantages. The current VNC implementation can handle multiple 60 FPS streams per core. But if you want to make a case for a different remote desktop protocol, a working implementation and performance comparison would be interesting to see.

Closing, but reopen if there's a good case for changing

authors: shyamalschandra tlbtlbtlb

repo: openai/universe


text:
Allow definition on "security" or enable inclusion of parent openapi definition

Is your feature request related to a problem? Please describe.
My API definition should contain reference to the used API key like
security:
- ApiKeyAuth: []

...

  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: X-API-KEY
      in: header

This seems not to be possible with the current plugin.
Describe the solution you'd like
Possible solutions - I like both ;-)

enable usage of an appendable openapi definition which could contain this definition
enable definition of securitySchemes and security in pom.xml

Should be solved with in #53

#53 (replaced by #58) will be included in next release (this week).

authors: cljk langecode wanno-drijfhout

repo: openapi-tools/swagger-maven-plugin


text:
Add GraphQL API

This adds a (readonly) GraphQL API via PostGraphile.
Apart from the basic setup, this also adds

custom ínflectors to make field names nicer
some custom smart tags to hide prisma specific stuff and relation-only tables
a hook to set a default pagination argument and/or error for invalid (too high) pagination args - this will have te be thought trhough (see the comments in the wrap-resolver.ts)

It's working well so far!
yarn build && yarn server, then open http://localhost:8765/graphiql to play with the API in GraphiQL with the explorer on the side.
I think this can be merged already as-is. Followup might be to do a bit more cleaning via inflectors or other hooks. There's still some XviaXviaZ relations that I think we should remove. However if possible I'd like the module to stay without knowledge of the domain data model. Not too important though for now. So maybe we add some tags to hide what we don't want to have. We can think about how to keep that in one place later.

Screenshot for the curious:

repo: openaudiosearch/repco-specs


text:
NSR Error: "VimDriverException: Image is not yet in active. Try again later..."

Hi,
I have installed openbaton 5.2.0 on Ubuntu 16.04 VM & got it successfully integrated to DevStack OpenStack Single Machine setup. After uploading the VNF packages i.e. iPerf-server/client & creating the NSD, when I try to launch the service its getting failed with following error.
"ERROR:org.openbaton.common.vnfm_sdk.exception.VnfmSdkException: Not able to allocate Resources because: org.openbaton.exceptions.VimException: Not launched VM with hostname iperf-server-2316800 successfully on VimInstance devstack-demo. Caused by: org.openbaton.exceptions.VimDriverException: Image (name: cda6cae3-2a4a-4738-8ca8-af482ef731c1) is not yet in active. Try again later..."
Also find the openbaton.log attached herewith.
I could see in the OpenBaton Dashboard that the given Image is showing Active. Here is details of my openbaton setup:

openbaton-fms 1.4.2
openbaton-nfvo 5.2.0
openbaton-plugin-monitoring-zabbix 5.0.0
openbaton-plugin-vimdriver-openstack-4j 5.2.0
openbaton-plugin-vimdriver-test 5.2.0
openbaton-vnfm-generic 5.2.0

Thanks is Advance to provide resolution to this problem.
Regards
Manas...
NSR Error Image is yet not active.txt

This error logs indicates that you were uploading the image when trying to deploy. Since the image was not yet uploaded completely, it gives you this error message.
Nevertheless, it would be great if you can provide also the logs of VNFM and Driver so that we may have a deeper look in case the problem is related to the NFVO and a wrong setting of the image status.

authors: askmanas mpauls

repo: openbaton/NFVO


text:
Witherspoon MFG Stage related Test

https://github.com/openbmc/openbmc/issues/664

This includes both January and April deliverables.

Please feel free to change the estimate.

https://github.com/openbmc/openbmc-test-automation/issues/297
https://github.com/openbmc/openbmc-test-automation/issues/308

[ ] Please list out all TCs associate with it. ( Send via email or put it in internal repo)

[ ] Evaluate Automation can be done or need manual execution

[ ]  Create stories phase wise

[ ] Create stories for automation and check-in it in internal repo.

Tested the following commands:

spstate

power -off

sptime -timeofday

sptime -timeofday 20170206180303

getvpd -sys_mtm

updatevpd -sys_mtm

getvpd -inventory

getvpd -backplane

mfgconfig -on 000419b9

mfgconfig -r

mfgconfig -off ffffffff

gard -clr all

spfirmwareconfig-driver

sptime -ntpconfigured

sptime -ntpconfigured 0

sptime -ntpconfigured 1

spfirmwareconfig -rbotcnt 0

spfirmwareconfig -rbotcnt 1

spfirmwareconfig -rbotcnt

errorlog -l

errrolog -l -info

errorlog -d

errorlog -d -dump

errorlog -d -dump-all

errorlog -p

spconsole -fsp 9.41.166.231

bootdev

bootdev setup

spflashupdate

chassispower -on

ledcontrol -t

ledcontrol -r

mfgcommand -m vapi -rn

mfgcommand -m vapi -n

mfgcommand  -m vapi -s

mfgcommand  -m vapi -r

mfgcommand  -m vapi -t

mfgcommand  -m vapi -f

mfgcommand  -m vapi -c

mfgcommand -m char -append -marker XXX

mfgcommand -m vfs -e

dump_pstate -occ 0

dump_pstate -occ 1

setfrequencypoint FUT

chassisconfig

tmgtclient -change_occ_state 03

Defects:
https://w3.rchland.ibm.com/projects/bestquest/?defect=SW404969
https://w3.rchland.ibm.com/projects/bestquest/?defect=SW404970
https://w3.rchland.ibm.com/projects/bestquest/?defect=SW403940

@gkeishin @sivassrr as  I am not testing manufacturing related testcases. you can remove me from assignee....

Closing tracked differently

authors: SrideviRamesh gkeishin sivassrr swe12345

repo: openbmc/openbmc-test-automation


text:
Add new project and new ontology wizards

The new project wizard configures the project to have OML and Xtext natures and creates a src directory.
The new ontology wizard creates a vocabulary, bundle, or description ontology, and allows the user to specify a namespace IRI, separator, and prefix.
By default, description ontologies are saved as OML XMI and vocabulary and bundle ontologies are saved as OML text.
New Project Wizard

New Ontology Wizard

You may want to adopt OML 0.7 in this PR. In that release, Bundle got renamed to VocabularyBundle and a new DescriptionBundle got added. So, you may want to accomodate those changes in this PR.

Updated to 0.7.1 (and made some other fixes)

authors: melaasar paulgaspardo

repo: opencaesar/oml-rosetta


text:
Shows "NaN" when navigating through multiple entities

Click on one post in the list on the right, the frame opens where we can read the full text of the post. Click on a second one, this happens (he post in question is this: https://edgeryders.eu/en/practical-resilience/mission_case/response-vinays-europes-new-war). It seems that the dashboard always responds well to the first request to see a post, and always badly to requests after the first one.

Then same thing happens with other kinds of entities, like codes.

Ok, this one is a bit harder to address. After a lot of testing on Firefox, this behaviour never occurred even a single time. Then I tried the same on Chromium and, indeed, the issue appears from time to time (but mostly on the first try to consult a content). Maybe it is the same on Safari and Edge?
My tests on Chromium were mostly focussed on checking if the overall appearance of the views was similar across the browsers, so it slipped right under my nose. Some versions of Chrome seems to have shortcomings getting the content via promises, see this previous bug report. I will look into it.

Ok, its fixed. I went looking for the error way too far instead of focusing on what should have been obvious. When you hear hoofbeats...

authors: albertocottica jason-vallet

repo: opencarecc/graph-ryder-dashboard


text:
how to submit transaction between different openchain servers？

I have installed openchain servers in 3 nodes, such as 192.168.0.2、192.168.0.3、192.168.0.4,  I can visit them  by openchain wallet (http://nossl.wallet.openchain.org/),  but transaction only happened in one server, cannot transfer funds from 192.168.0.2 to 192.168.0.3. how to implement transaction between different servers ?

+1

authors: karneaud leonlov

repo: openchain/openchain


text:
Merge objects

Need to determine what to do with overlap with @boblannon's pupa PR: https://github.com/opencivicdata/pupa/pull/170

My opinion is that we go with your merge code.  Mine is pretty brutal and makes sweeping policy decisions based on my particular usecase (the disclosures and related objects).  That usecase isn't going to even exist in the future, as we'll be linking influence records, rather than merging them.

What are all the migrations that get added here?

@paultag adding a locked_fields field to everything

Yeah, I saw a few of those, but a bunch don't have locked_fields in the name, e.g.

+        migrations.AlterField(
+            model_name='billaction',
+            name='organization',
+            field=models.ForeignKey(to='opencivicdata.Organization', related_name='actions'),
+            preserve_default=True,
+        ),

It looks like I may have changed the default? I don't remember doing that for this change, but this might be a Rachel-is-terrible-at-git issue where I did it somewhere else but failed to commit that merge? I will investigate

It may also be a Django migrations hiccup, but yeah, let's at least explain
what's up here :)
On Mon, Jun 22, 2015 at 12:28 PM, Rachel notifications@github.com wrote:

It looks like I may have changed the default? I don't remember doing that
for this change, but this might be a Rachel-is-terrible-at-git issue where
I did it somewhere else but failed to commit that merge? I will investigate
—
Reply to this email directly or view it on GitHub
https://github.com/opencivicdata/python-opencivicdata-django/pull/46#issuecomment-114171669
.

--
Paul Tagliamonte
Software Developer | Sunlight Foundation

(Perhaps we just need two migrations to logically swap out this if there's a need for it)

it looks like somehow the related names didn't get set in the initial migration. Seems like these are all that. Any idea why it would add those in?

to be clear, I definitely did not change any related names.

@rshorey Let's get a new PR open with just the related name migration

OK, coming shortly. There are some char and text fields in here too which I'm pretty confident are a result of a previous migration file not being appropriately shared

@paultag I think this is ready to go, unless you, @mileswwatkins or @boblannon has any objections.

Awesome. let's do it!

:confetti_ball:

authors: boblannon mileswwatkins paultag rshorey