(self, messages: Dict[str, List[Dict]])
| 733 | return enc_chunk |
| 734 | |
| 735 | def convert(self, messages: Dict[str, List[Dict]]) -> str: |
| 736 | texts = [] |
| 737 | image = [] |
| 738 | messages = messages['messages'] |
| 739 | for turn in messages: |
| 740 | if turn['role'] == 'system': |
| 741 | role = '' |
| 742 | elif turn['role'] == 'user': |
| 743 | role = 'Human: ' |
| 744 | else: |
| 745 | role = 'AI: ' |
| 746 | if isinstance(turn['content'], str): |
| 747 | text = f"{role}{turn['content']}" |
| 748 | texts.append(text) |
| 749 | else: |
| 750 | for t in turn['content']: |
| 751 | if isinstance(t, str): |
| 752 | text = f'{role}{t}' |
| 753 | else: |
| 754 | text = f'{role}<|image|>' |
| 755 | image.append(t['image']) |
| 756 | texts.append(text) |
| 757 | texts = '\n'.join(texts) |
| 758 | texts += '\nAI: ' |
| 759 | return image, texts |
| 760 | |
| 761 | def __call__(self, messages: Dict[str, Any], |
| 762 | **forward_params) -> Dict[str, Any]: |
no test coverage detected