| 553 | |
| 554 | |
| 555 | def get_grid_placeholder(tokenizer, grid, query_num, new_schema=False): |
| 556 | if new_schema: |
| 557 | image_placeholder = ( |
| 558 | tokenizer.slice_start + tokenizer.unk_token * query_num + tokenizer.slice_end |
| 559 | ) |
| 560 | else: |
| 561 | image_placeholder = ( |
| 562 | tokenizer.im_start + tokenizer.unk_token * query_num + tokenizer.im_end |
| 563 | ) |
| 564 | |
| 565 | cols = grid[0] |
| 566 | rows = grid[1] |
| 567 | slices = [] |
| 568 | for i in range(rows): |
| 569 | lines = [] |
| 570 | for j in range(cols): |
| 571 | lines.append(image_placeholder) |
| 572 | slices.append("".join(lines)) |
| 573 | if new_schema: |
| 574 | slice_placeholder = '\n'.join(slices) |
| 575 | else: |
| 576 | slice_placeholder = tokenizer.slice_start + \ |
| 577 | "\n".join(slices) + tokenizer.slice_end |
| 578 | return slice_placeholder |
| 579 | |
| 580 | |
| 581 | def reshape_by_patch(image_tensor, patch_size): |