8 คะแนน โดย GN⁺ 2023-12-29 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • บันทึกทุกการกระทำที่เกิดขึ้นบนหน้าจอคอมพิวเตอร์ (ถ่ายภาพหน้าจอทุก ๆ 2 วินาที)
  • ในมุมมองไทม์ไลน์ สามารถเลื่อนซ้าย/ขวาเพื่อย้อนหรือเดินหน้าเวลาได้
    • หาก Live Text รู้จำข้อความได้ ก็จะสามารถเลือกข้อความนั้นได้
  • ค้นหาคำเฉพาะเพื่อหาหน้าจอที่ต้องการ และสามารถดูเนื้อหาทั้งหมดที่ OCR จากหน้าจอนั้น หรือส่งข้อความนั้นไปยัง ChatGPT เป็นต้น เพื่อทำงานต่อได้
  • ทดสอบบน Apple Silicon เท่านั้น และรีลีสก็รองรับเฉพาะ Apple Silicon
  • เป็นเวอร์ชันเริ่มต้นมาก: เขียนขึ้นภายในไม่กี่วันช่วงวันหยุด และผู้เขียนยังเป็นมือใหม่กับ Swift

เริ่มต้นใช้งาน

  • สร้างจากซอร์สเอง หรือดาวน์โหลดรีลีสแล้วรัน xattr -c rem.app เพื่ออนุญาตแอปบน macOS
  • หลังเปิดแอป ให้คลิก "Start Remembering" เพื่อให้สิทธิ์เข้าถึง "Screen Recording"
  • เปิดมุมมองไทม์ไลน์ด้วย "Open timeline" หรือ "Cmd + Scroll Up"
  • ในไทม์ไลน์ ให้เลื่อนซ้ายหรือขวาเพื่อย้ายไปตามเวลา
  • คลิก "Search" เพื่อเปิดมุมมองค้นหา แล้วคลิกรูปย่อในไทม์ไลน์เพื่อย้ายไปยังเวลานั้น
  • เปิดใช้ Live Text ในไทม์ไลน์เพื่อเลือกข้อความได้
  • คลิก "Copy Recent Context" เพื่อคัดลอกสิ่งที่เพิ่งดูไปเป็นพรอมป์ต์สำหรับโต้ตอบกับ LLM
  • คลิก "Purge All Data" เพื่อลบข้อมูลทั้งหมดได้

ฟีเจอร์ที่รองรับในปัจจุบัน:

  • ย้อนกลับไปดูอดีต (ตัวเลื่อนดูแบบเต็มหน้าจอสำหรับทุกสิ่งที่เคยเห็น)
  • คัดลอกข้อความจากอดีต
  • ค้นหาทุกสิ่งที่เคยเห็น
  • ดึงบริบทล่าสุดมาใช้โต้ตอบกับ LLM ได้ง่าย

ฟีเจอร์ที่อยากเพิ่ม:

  • การค้นหาภาษาธรรมชาติ/การโต้ตอบกับเอเจนต์ ผ่านการอัปเดต local vector embedding
  • สำรวจแนวทางใหม่สำหรับ vector database
  • รองรับหลายจอ

1 ความคิดเห็น

 
GN⁺ 2023-12-29
ความคิดเห็นบน Hacker News
  • สรุปความเห็นแรก:

    • เครื่องมือนี้ดูเจ๋งมาก มันทำให้นึกถึงตอนที่เพิ่งเคลียร์พื้นที่ดิสก์แล้วไปเจอไฟล์บันทึกหน้าจอความยาว 9 ชั่วโมงจากเกือบ 1 ปีก่อน น่าจะเผลอเปิดอัดทิ้งไว้ การไถดูอย่างรวดเร็วแล้วดูทั้งหมดภายในไม่กี่นาทีเป็นประสบการณ์ที่น่าหลงใหล เพราะได้แอบเห็นกระบวนการคิดของตัวเองในตอนนั้น ผมได้เห็นวิธีที่ตัวเองค้นคว้าข้อมูลออนไลน์ ซึ่งให้ความรู้และมีประโยชน์คล้ายกับการย้อนดูการแข่งขันกีฬา นอกจากนี้ การได้เห็นรายละเอียดในช่วงเวลานั้นอีกครั้งก็สร้างความเปลี่ยนแปลงบางอย่างให้ด้วย ผมสร้างเครื่องมือชื่อ DownloadNet ที่เก็บทุกหน้าที่เคยเข้าชมไว้แบบออฟไลน์และทำดัชนีครบถ้วนได้ และยังตั้งให้เก็บเฉพาะหน้าที่บุ๊กมาร์กไว้ก็ได้ด้วย เครื่องมือนี้เป็นโอเพนซอร์ส ลองดูได้ที่: ลิงก์ GitHub ของ DownloadNet
    • การคัดลอกข้อความจากวิดีโอที่บันทึกไว้เป็นเรื่องที่น่าทึ่งมาก
  • สรุปความเห็นที่สอง:

    • เมื่อก่อนผมเคยใช้ยูทิลิตีชื่อ TimeSnapper Classic ที่ถ่ายสกรีนช็อตตามช่วงเวลา แต่พอใช้งานไป สกรีนช็อตก็เริ่มกินพื้นที่ดิสก์ และส่วนใหญ่ก็ดูแทบไม่ต่างกัน ผมเลยคิดว่าควรทำ codec ที่เหมาะกับลำดับภาพแบบนี้ขึ้นมาเอง ก่อนจะรู้ตัวว่ากำลังประดิษฐ์ GIF/video codec ขึ้นมาใหม่ สุดท้ายเลยเขียนสคริปต์ที่ใช้ ImageMagick ใส่ timestamp ลงในภาพ แล้วใช้ ffmpeg แปลงเป็นวิดีโอ ซึ่งทำให้ขนาดไฟล์ลดลง 99.9%
  • สรุปความเห็นที่สาม:

    • นานมาแล้วผมเคยทำโปรเจ็กต์ที่จับภาพหน้าจอทุก ๆ สองสามวินาทีแล้วดึงข้อมูลออกมาอัตโนมัติ ผมสร้าง PNG DB โดยแบ่งภาพ PNG ออกเป็นหลายบล็อกแล้วเก็บแต่ละบล็อกไว้ในฐานข้อมูล บล็อกที่ซ้ำกันจะถูกเก็บเพียงครั้งเดียว และค้นหาได้เร็วด้วย hash table ด้วย PNG DB นี้ ผมทำอัตราการบีบอัดได้ราว 400-500% ลิงก์ GitHub ของ PNG DB แต่สคริปต์ที่ใช้วิเคราะห์สกรีนช็อตสุดท้ายก็ไม่ได้ประสบความสำเร็จมากนัก ลิงก์ GitHub ของ screenshooting ประสบการณ์นี้ต่อยอดไปสู่อีกโปรเจ็กต์หนึ่ง ซึ่งเก็บข้อมูลอย่างแอปที่กำลังใช้งานหรือไฟล์ที่เปิดอยู่โดยตรงมากกว่า ลิงก์ GitHub ของ timecapture
  • สรุปความเห็นที่สี่:

    • ดูเหมือนคุณจะให้ความสำคัญกับความเป็นส่วนตัวและความปลอดภัย แต่ก็น่าสนใจที่ใช้เว็บเบราว์เซอร์แบบปิดซอร์สอย่าง Arc Browser
  • สรุปความเห็นที่ห้า:

    • ผมอยากได้เครื่องมือแบบนี้ที่เป็นมัลติแพลตฟอร์มจริง ๆ และทำงานบนเครื่องได้เอง Linux กับ Windows เป็นสิ่งจำเป็น และต้องเป็นออฟไลน์ 100% ใช้งานได้โดยไม่ต้องต่ออินเทอร์เน็ต ผมยอมจ่าย 60 ดอลลาร์ต่อเมเจอร์เวอร์ชันต่อปีได้เลย ถ้าเพิ่มไลเซนส์โอเพนซอร์สแบบ permissive เข้ามาด้วย ผมน่าจะกลายเป็นลูกค้าตลอดชีพ หรือถ้ามีคนอื่นสนใจเหมือนกัน บางทีผมอาจต้องทำมันขึ้นมาเอง
  • สรุปความเห็นที่หก:

    • เกี่ยวกับ 'Remember Everything': ผมใช้ส่วนขยายเบราว์เซอร์ singleFile เพื่อเก็บสำเนาของทุกหน้าเว็บที่ดูผ่าน Chrome และ FireFox นอกจากนี้ยังใช้โปรแกรม AutomaticScreenshotter เพื่อบันทึกกิจกรรมบนหน้าจอที่ไม่ใช่กิจกรรมในเบราว์เซอร์ด้วย วิธีนี้ทำให้ผมรู้ได้ว่าในวันใดวันหนึ่งในอดีต ผมทำอะไรบนพีซีบ้าง ไฟล์ทั้งหมดถูกเก็บในโครงสร้างไดเรกทอรี ปี/เดือน/วัน ตอนนี้ผมใช้ Windows Search ในการค้นหาไฟล์ ผมใช้ ditto เพื่อเก็บทุกการคัดลอกและวางลงใน mysqldb ผมใช้โครงสร้างไดเรกทอรีแบบนี้มาตั้งแต่ก่อนปี 2010 แล้ว และเริ่มใช้ส่วนขยายกับการจับภาพหน้าจอเมื่อประมาณ 3-4 ปีก่อน ผมสงสัยว่าการใช้หรือดัดแปลงเครื่องมือสืบสวนพีซีเชิงนิติวิทยาศาสตร์จะช่วยสร้างไทม์ไลน์กิจกรรมบนพีซีได้หรือไม่
  • สรุปความเห็นที่เจ็ด:

    • คงน่าสนใจที่จะได้เห็นว่าเทคโนโลยีเหล่านี้จะถูกใช้อย่างไรในอีก 5 หรือ 10 ปีข้างหน้า เรามีอุปกรณ์ช่วยจำที่ทรงพลังที่สุดเท่าที่เคยมีมา แต่กลับพยายามไม่ใช้มันอยู่ตลอด ซึ่งน่าคิดทีเดียว ในอีกด้านที่จริงจังกว่านั้น ผมคิดว่าเครื่องมือแบบนี้อาจขัดขวางความคิดสร้างสรรค์ได้ เพราะเราอาจสร้างนิสัยพึ่งพาเครื่องมือเหล่านี้แทนที่จะจำด้วยตัวเอง ทั้งที่ความคิดสร้างสรรค์คือความสามารถในการนำความทรงจำในอดีตมาประกอบใหม่กับสิ่งที่จะเกิดขึ้นในอนาคต
  • สรุปความเห็นที่แปด:

    • เดโมของ OP เจ๋งมาก ผมสงสัยว่าทำไมมันถึงรองรับแค่ Apple Silicon เป็นเพราะการรองรับ ML ดีกว่า Windows หรือเปล่า น่าเสียดายที่ Olama ใช้บน Windows ไม่ได้ ผมไม่มีโน้ตบุ๊ก Apple Silicon มีแค่ Apple Intel และเครื่อง Windows แรง ๆ เลยยังทดสอบสิ่งนี้ไม่ได้ ผมเป็นแค่นักพัฒนาโปรแกรมพื้นฐานและไม่ค่อยมีไอเดียว่าจะสร้างอะไรแบบนี้จากศูนย์ได้อย่างไรหากไม่มีภาษา Swift ถ้าผมเป็น OP ผมคงเริ่มจากทำบทเรียน Swift เยอะ ๆ ความหวังคือการทำโคลนด้วย Java หรือ C# ให้รันบน Linux หรือ Windows ได้ แต่ผมไม่มีประสบการณ์ด้าน ML, DirectX API หรือ Linux desktop API เลย มี API และเครื่องมือหลายอย่างที่ต้องทำความคุ้นเคยก่อนเริ่มโปรเจ็กต์ ผมสงสัยว่า OP ที่ไม่มีประสบการณ์ Swift มาก่อนสร้างสิ่งนี้ขึ้นมาได้อย่างไร หรือการทำโปรเจ็กต์บน Apple Silicon มันง่ายกว่าจริงไหม ผมมีประสบการณ์ 4 ปี และทำงานกับ Web API รวมถึง WinForm/DevExpress ด้วย Java และ C#
  • สรุปความเห็นที่เก้า:

    • ผมคิดว่าสิ่งนี้อาจใช้เป็นวิธีช่วยให้เรารับผิดชอบต่อตัวเองมากขึ้นได้ ผมสงสัยว่าสามารถจัดประเภทสกรีนช็อตเป็นกิจกรรม "เสียเวลา" กับ "มีประสิทธิภาพ" ได้ง่ายแค่ไหน (น่าจะทำได้ผ่านโมเดล ML) การทำสถิติให้เป็นเกมก็อาจเป็นอีกทางเลือกหนึ่ง เช่น คุณอาจเห็นสถิติว่าในหนึ่งชั่วโมงที่ผ่านมา คุณทำงานอย่างมีประสิทธิภาพ 78%, ใช้เวลาอยู่บน Hacker News 12%, และไม่ทำอะไรเลย 10% คุณอาจพยายามทำลายสถิติของตัวเองก็ได้ (เช่น มีช่วงเวลาที่ทำงานได้ 100% วันละ 3 ครั้ง น่าจะเป็นวันที่ยอดเยี่ยมมาก!) ผมชอบวิดีโอเดโมมาก ใช้เวลาไม่ถึง 30 วินาทีก็เข้าใจแล้วว่าเครื่องมือนี้ทำอะไร ขอบคุณ! PPS: (เป็นเรื่องรองมาก ๆ) ตัวควบคุมความเร็ววิดีโอ (ส่วนเสริมเบราว์เซอร์) ตอนนี้ใช้กับวิดีโอ loom ได้แล้ว — เมื่อไม่กี่เดือนก่อนยังใช้ไม่ได้
  • สรุปความเห็นที่สิบ:

    • มีสถานการณ์ฝันร้ายที่เป็นไปได้จากเทคโนโลยีแบบนี้ นายจ้างน่าจะชอบใช้เครื่องมือประเภทนี้เพื่อสอดส่องพนักงานแบบครบวงจร และถ้าเชื่อมเข้ากับ AI ก็อาจเฝ้าดูทุกสิ่งที่ทุกคนทำแบบเรียลไทม์พร้อมส่งสัญญาณเตือนได้