czczup commited on
Commit
d3da944
1 Parent(s): 754793a

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +29 -0
README.md CHANGED
@@ -315,6 +315,35 @@ print(f'User: {question}')
315
  print(f'Assistant: {response}')
316
  ```
317
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
318
  ## Finetune
319
 
320
  SWIFT from ModelScope community has supported the fine-tuning (Image/Video) of InternVL, please check [this link](https://github.com/modelscope/swift/blob/main/docs/source_en/Multi-Modal/internvl-best-practice.md) for more details.
 
315
  print(f'Assistant: {response}')
316
  ```
317
 
318
+ ### Streaming output
319
+
320
+ Besides this method, you can also use the following code to get streamed output.
321
+
322
+ ```python
323
+ from transformers import TextIteratorStreamer
324
+ from threading import Thread
325
+
326
+ # Initialize the streamer
327
+ streamer = TextIteratorStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True, timeout=10)
328
+ # Define the generation configuration
329
+ generation_config = dict(num_beams=1, max_new_tokens=1024, do_sample=False, streamer=streamer)
330
+ # Start the model chat in a separate thread
331
+ thread = Thread(target=model.chat, kwargs=dict(
332
+ tokenizer=tokenizer, pixel_values=pixel_values, question=question,
333
+ history=None, return_history=False, generation_config=generation_config,
334
+ ))
335
+ thread.start()
336
+
337
+ # Initialize an empty string to store the generated text
338
+ generated_text = ''
339
+ # Loop through the streamer to get the new text as it is generated
340
+ for new_text in streamer:
341
+ if new_text == model.conv_template.sep:
342
+ break
343
+ generated_text += new_text
344
+ print(new_text, end='', flush=True) # Print each new chunk of generated text on the same line
345
+ ```
346
+
347
  ## Finetune
348
 
349
  SWIFT from ModelScope community has supported the fine-tuning (Image/Video) of InternVL, please check [this link](https://github.com/modelscope/swift/blob/main/docs/source_en/Multi-Modal/internvl-best-practice.md) for more details.