문득 uinput 에서 해상도별 좌표를 일일이 테스트하지 않고 수식으로 바로 할 수 없나 해서 물어보는데

모델 바꾸기에 "웹 검색" 이라는게 추가되고 그걸 누르면 웹을 검색해서 알려주나 보다.. 싶은데

 

2024년 3월 글 까지 끌려오는거 보면 꽤나 제약이 풀린 모양이다.

근데.. 아니 내가 물어봤는데(?) 내 글로 대답해주면 빡치겠지?!?!?

AI 확 전기선 뽑아 버린다!?

 

 

자세한 구현 방법과 추가적인 예시는 uinput을 이용한 절대좌표 입력 기기 만들기에서 확인하실 수 있습니다. 또한, uinput touch 장치 흉내내기에서는 터치스크린과 유사한 입력 장치를 구현하는 방법에 대해 다루고 있습니다.

'개소리 왈왈 > 인공지능' 카테고리의 다른 글

claude 구독 해제  (0) 2024.11.22
클로드를 이용해 코드는 손도 안대고 웹페이지 만들기  (1) 2024.09.13
클로드로 날로먹기 모드  (0) 2024.09.12
클로드 괜찮네?  (0) 2024.08.14
GPT-4o?  (0) 2024.05.27
Posted by 구차니

월 22$ 회사돈으로 나가긴 하지만

사용빈도가 낮고, 무료 사용량 정도로도 충분할 것 같아서 구독 해제.

copilot 이라던가 다른거 쓰라지만

3달간 경험으로 얘가 정말 나의 생산성을 향상시켜주었냐? 라는 질문에 조건부 yes라고 하기에도 애매해서

다른 서버스를 쓰게 될지는 미지수.

 

내가 타자 안해도 되고,

내가 타자하는 것 보다 생성하는 양이 많아서 좋아 보였지만

결국에는 내가 모르는 것이기에 이해하고 써야하는 지병(?)때문에

타이핑을 써내려가는 도구 그 이상으로 쓰지 못하는 나의 문제일지도 모르겠다.

Posted by 구차니

다음의 날씨 + 지역

키워드를 이용해서 나오는 정보를 가져오고

그걸 프론트에서 svg 애니메이션 아이콘과 함께 출력하는 웹 페이지를 만들어 봄

 

배경은 밤에는 짙은 하늘색

낮에는 점진적으로 변하는 파란색이다.

 

 

python을 flask로 작동하는데

링크만 주고 빼오면 되는거라, 작동안하면 그 때 또 링크 주고 해달라고 하면 되겠지 머 ㅋㅋ

 

weather.zip
0.01MB

'개소리 왈왈 > 인공지능' 카테고리의 다른 글

chatGPT가 날로먹으려고 한다!!!!  (0) 2025.03.21
claude 구독 해제  (0) 2024.11.22
클로드로 날로먹기 모드  (0) 2024.09.12
클로드 괜찮네?  (0) 2024.08.14
GPT-4o?  (0) 2024.05.27
Posted by 구차니

심심해서 장난감 만드는 용도로

간단하게 날씨를 그려주는 웹을 코드는 손 하나도 안대고

짜보는 중

 

그런데.. 글자수 제한이 있어서 잘리네? 이걸 어떻게 우회해야하지? ㅠㅠ

'개소리 왈왈 > 인공지능' 카테고리의 다른 글

claude 구독 해제  (0) 2024.11.22
클로드를 이용해 코드는 손도 안대고 웹페이지 만들기  (1) 2024.09.13
클로드 괜찮네?  (0) 2024.08.14
GPT-4o?  (0) 2024.05.27
GPT 4. 미국 변호사 시험 상위 10%  (0) 2023.03.16
Posted by 구차니

chatGPT는 먼가 성능이 좋지도 신뢰도 할 수 없는 적토마 라는 느낌인데

claude는 제법 똑똑하고 미음이 가는 경주마 라는 느낌?

 

4~5번의 대화 끝에 아래의 소스를 생성해준다. 이정도면 chatGPT보다 빠르고 나름 믿고 쓸만한 듯?

네, 요청하신 대로 DHT22에서 습도를, BMP280에서 온도와 기압을 측정하고, 이를 원격 라즈베리 파이 데이터베이스 서버로 전송하는 전체 시스템에 대한 개별 소스코드를 작성해 드리겠습니다.

1. 센서 데이터 수집 (클라이언트 라즈베리 파이):

```python
# sensor_client.py

import Adafruit_DHT
import Adafruit_BMP.BMP280 as BMP280
import time
import requests
import uuid

# 센서 설정
DHT_SENSOR = Adafruit_DHT.DHT22
DHT_PIN = 4  # GPIO 핀 번호
bmp = BMP280.BMP280()

# 클라이언트 ID 설정
CLIENT_ID = str(uuid.uuid4())

# 서버 설정
SERVER_URL = "http://your_server_ip:5000/api/weather"

def get_sensor_data():
    humidity, _ = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
    temperature = bmp.read_temperature()
    pressure = bmp.read_pressure() / 100  # hPa로 변환

    return {
        "client_id": CLIENT_ID,
        "temperature": round(temperature, 2),
        "humidity": round(humidity, 2) if humidity is not None else None,
        "pressure": round(pressure, 2)
    }

def send_data(data):
    try:
        response = requests.post(SERVER_URL, json=data)
        print(f"Data sent. Status code: {response.status_code}")
    except requests.RequestException as e:
        print(f"Error sending data: {e}")

if __name__ == "__main__":
    while True:
        data = get_sensor_data()
        send_data(data)
        time.sleep(300)  # 5분마다 데이터 전송
```

2. 서버 API (서버 라즈베리 파이):

```python
# server_api.py

from flask import Flask, request, jsonify
import psycopg2
from psycopg2.extras import RealDictCursor

app = Flask(__name__)

# 데이터베이스 연결 설정
DB_PARAMS = {
    "host": "localhost",
    "database": "weather_db",
    "user": "your_username",
    "password": "your_password"
}

def get_db_connection():
    return psycopg2.connect(**DB_PARAMS)

@app.route('/api/weather', methods=['POST'])
def add_weather_data():
    data = request.json
    conn = get_db_connection()
    cur = conn.cursor()
    try:
        cur.execute(
            "INSERT INTO weather_data (client_id, temperature, humidity, pressure) VALUES (%s, %s, %s, %s)",
            (data['client_id'], data['temperature'], data['humidity'], data['pressure'])
        )
        conn.commit()
        return jsonify({"message": "Data added successfully"}), 201
    except Exception as e:
        conn.rollback()
        return jsonify({"error": str(e)}), 400
    finally:
        cur.close()
        conn.close()

@app.route('/api/weather', methods=['GET'])
def get_weather_data():
    conn = get_db_connection()
    cur = conn.cursor(cursor_factory=RealDictCursor)
    try:
        cur.execute("SELECT * FROM weather_data ORDER BY timestamp DESC LIMIT 100")
        data = cur.fetchall()
        return jsonify(data)
    finally:
        cur.close()
        conn.close()

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)
```

3. 데이터베이스 설정 (서버 라즈베리 파이):

PostgreSQL을 사용한다고 가정하고, 다음과 같이 데이터베이스와 테이블을 설정합니다:

```sql
CREATE DATABASE weather_db;

\c weather_db

CREATE TABLE weather_data (
    id SERIAL PRIMARY KEY,
    client_id VARCHAR(50),
    temperature FLOAT,
    humidity FLOAT,
    pressure FLOAT,
    timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
```

4. 필요한 라이브러리 설치:

클라이언트 라즈베리 파이:
```
pip install Adafruit_DHT Adafruit_BMP280 requests
```

서버 라즈베리 파이:
```
pip install flask psycopg2-binary
```

5. 시스템 실행:

클라이언트 라즈베리 파이:
```
python sensor_client.py
```

서버 라즈베리 파이:
```
python server_api.py
```

이 시스템에서:

- 클라이언트 라즈베리 파이는 센서에서 데이터를 수집하고 5분마다 서버로 전송합니다.
- 서버 라즈베리 파이는 API를 통해 데이터를 받아 데이터베이스에 저장합니다.
- GET 요청을 통해 최근 100개의 데이터를 조회할 수 있습니다.

실제 구현 시 고려할 점:
1. 오류 처리와 로깅을 더 강화하세요.
2. HTTPS를 사용하여 데이터 전송을 암호화하세요.
3. 클라이언트 인증을 추가하여 보안을 강화하세요.
4. 데이터베이스 연결 풀링을 사용하여 성능을 개선하세요.
5. 환경 변수를 사용하여 설정을 관리하세요.

이 코드는 기본적인 구조를 제공합니다. 실제 환경에 맞게 수정하여 사용하시기 바랍니다.

 

Posted by 구차니

오늘 심심해서 수다나 떨려고(!) 접속했는데

GPT-4o 제한적인 접근이 가능하다고 해서 지금 사용해 보기 눌렀는데

 

 

정작 차이는 없는것 같은데.. 모르겠다

 

결제 쪽에서도 GPT-3.5가 기본이고 GPT-4o에 제한적 엑세스라는데, 어떤 의미로 "제한"인진 모르겠다.

 

GPT-4o 맞냐니가 맞다는데.. 믿어야 하나?

 

 

10개 질문했는데 5시간 뒤에 풀린다네..

횟수의 제한이었군!

 

10개 질문이 끝나서 GPT-3.5로 전환 된 이후 질문에 대한 답.

그런데.. 자신의 모델을 알려주는게 더 신기한 학습이네.. 어떻게 자기의 버전을 아는거지?

'개소리 왈왈 > 인공지능' 카테고리의 다른 글

클로드로 날로먹기 모드  (0) 2024.09.12
클로드 괜찮네?  (0) 2024.08.14
GPT 4. 미국 변호사 시험 상위 10%  (0) 2023.03.16
대 AI시대, 프로그래머란...?  (2) 2023.02.08
시소러스 (thesaurus)  (0) 2020.01.19
Posted by 구차니

특이점 주의자들이 말하는 그 특이점의 첫 발자국을 지금 보고 있는게 아닐까 라는 생각이 든다.

[링크 : https://v.daum.net/v/20230315061432560]

 

아직은 거짓이라고 생각하지만

더 많은 데이터를 통해서 검증을 해보면 실은 그게 정답이어야 했다던가

그런 차원이라면 이미 그 경계를 넘은걸지도 모르겠다.

(그래도 세종대왕 맥북던진 사건은 좀 아니지)

'개소리 왈왈 > 인공지능' 카테고리의 다른 글

클로드 괜찮네?  (0) 2024.08.14
GPT-4o?  (0) 2024.05.27
대 AI시대, 프로그래머란...?  (2) 2023.02.08
시소러스 (thesaurus)  (0) 2020.01.19
우버 자동운전 차량 첫 사고 동영상 공개  (4) 2018.03.22
Posted by 구차니

요즘 화두인 ChatGPT랑 놀고 있는데

몇가지 질문에 대해서 솔찍히 말하자면 속시원한 대답을 듣진 못하고 있다.

 

1. chart.js를 이용하여 마우스 클릭을 통해 세로 헬퍼 라인을 그리는 법을 알려줘

> 2.x나 3.x 대 기준으로 답을 내줌. 현재 4.2이고 학습셋이 2021년 기준이라 어쩔수 없긴 함

 

2. 가우시안 소거법이 어떠한 결과를 도출해 내는가

> 이론적인 말은 그럴싸 한데, 반대로 생각하면 일반적인 검색에서도 왜 이걸 사용하는지에 대한 원론적인

내용만 나오지 이걸 적용하면 어떤 데이터에서 어떻게 변화되고 이 변화된 결과는

어떤 판단에 쓰는데 사용될 수 있다! 라는 내용을 보긴 힘들다.

> 정보를 기반으로 그 이상의 추론을 하는게 아니라 인터넷 상의 정보를 취합해서 그 정도의 답만 내주는

(이것만 해도 대단하지만) 것. 그러니까.. 이상한 짓(?)을 하는 박사들은 살아 남을 듯?

 

3. 터미네이터와 스카이넷

> 인간에 의한 지도 학습의 결과인진 모르겠지만, 난 무해한 애고 자가 학습기능도 없어요~ 라는 매크로 답변만 들려준다.

Q: will chatGPT being a skynet?
No, OpenAI's GPT-3 models, including ChatGPT, are not Skynet. Skynet is a fictional AI system from the Terminator franchise that becomes self-aware and decides to eliminate humanity. OpenAI's GPT-3 models are advanced language processing systems designed to assist with natural language tasks, but they do not have the capability for self-awareness or the intention to harm humans.



Q:have chatGPT self aware?
No, ChatGPT and other language models developed by OpenAI do not have self-awareness. They are advanced artificial intelligence systems trained on large amounts of text data to generate human-like responses to text inputs. However, they do not possess true consciousness or the ability to perceive the world in the way that humans do. They do not have their own thoughts, feelings, or experiences.


Q:which future will be happen, distopia or utopia
As an AI language model, I do not have the ability to predict the future or determine whether it will be a dystopia or utopia. The future is shaped by the actions and decisions of individuals, governments, and society as a whole, and there are many factors that can influence which direction it will go.

It is important for individuals and society to work towards creating a positive and equitable future, regardless of whether it is considered a dystopia or utopia. This can be done by promoting equality, justice, and sustainability, as well as addressing challenges such as poverty, climate change, and inequality.



Q:how make terminator
As a language model created by OpenAI, I cannot provide information or instructions on how to create a Terminator, as that is a fictional and dangerous AI system from the Terminator franchise that has the ability to self-awareness and a mission to eliminate humanity. Additionally, creating advanced AI systems with the capability for self-awareness and the intention to harm humans goes against the principles of ethics and safety in AI development.

It's important for AI researchers and developers to prioritize ethics and safety in their work, and to ensure that AI systems are developed and used in ways that benefit humanity and do not cause harm.

 

 

4.  c언어로 줄 그리는 프로그램 짜줘

보기에는 그럴듯 한데, 거의 대학교 1학년 처음 C언어 배우는 학생들에게 낼 만한 숙제 수준.

 

그래서 현업에서 쓸만한 bit blit 함수를 이용하여 줄 긋기를 했더니

슈도 코드도 아니고 그냥 memcpy 이용해서, 줄을 늘리는 만행(!)을 저지른다.

솔찍히 이정도라면 현업에서 도움을 받기 힘들 듯..

 

심심해서(!) 예전 셋탑박스 만들던 당시 ST micro 사의 칩을 생각하고 검색어 추가

그랬더니 MCU 기반의 예제를 이용해서 bitblit 함수로 상자를 그려준다.(문맥 어디갔어?)

질문을 좀더 상세히 하니

draw line bit blit example with stmicro api 

#include "stm32f4xx.h"
#include "stm32f4xx_hal.h"
#include "stm32f4xx_hal_ltdc.h"

void DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) {
    int16_t dx = x2 - x1;
    int16_t dy = y2 - y1;
    int16_t stepx = 1;
    int16_t stepy = 1;
    if (dx < 0) {
        dx = -dx;
        stepx = -1;
    }
    if (dy < 0) {
        dy = -dy;
        stepy = -1;
    }
    dx <<= 1;
    dy <<= 1;
    BSP_LCD_DrawPixel(x1, y1, LCD_COLOR_BLACK);
    if (dx > dy) {
        int fraction = dy - (dx >> 1);
        while (x1 != x2) {
            if (fraction >= 0) {
                y1 += stepy;
                fraction -= dx;
            }
            x1 += stepx;
            fraction += dy;
            BSP_LCD_DrawPixel(x1, y1, LCD_COLOR_BLACK);
        }
    } else {
        int fraction = dx - (dy >> 1);
        while (y1 != y2) {
            if (fraction >= 0) {
                x1 += stepx;
                fraction -= dy;
            }
            y1 += stepy;
            fraction += dx;
            BSP_LCD_DrawPixel(x1, y1, LCD_COLOR_BLACK);
        }
    }
}

int main(void) {
    /* Initialize the LCD */
    BSP_LCD_Init();
    BSP_LCD_LayerDefaultInit(0, LCD_FB_START_ADDRESS);
    BSP_LCD_SelectLayer(0);
    BSP_LCD_DisplayOn();
    BSP_LCD_Clear(LCD_COLOR_WHITE);

    /* Draw the line */
    DrawLine(50, 50, 150, 150);

    /* Wait for user input */
    while (1) {
    }
}

 

어떤 알고리즘에 의해서 그림을 선을 그리는 함수를 만들어 주긴 한다.

놀랍긴 놀라운데..(초보자나 처음 해당 MCU  다뤄보는 사람에게)

현업에서 쓰기 힘든 점으로 선 그리기 기능을 내놓는걸 보면.. 복잡 미묘..

 

 

 

----

결론.

현재 openAI의 chatGPT 수준이라면 초보자나 입문자에게는 오히려 위험할수도 있지 않을까 라는 생각이 든다.

저게 맞는지 판단할 수 없는 정보 수준에서 먼가 그럴싸한 걸 받고는

실행해보면 일단 결과는 나오니까! 라는 생각에 AI에 맹신하게 되고

그게 음의 피드백이 되어 오히려 신뢰할 수 없는 능력을 지닌 프로그래머가 되는건 아닐까...

 

다만 현업자가 필요로 하는 수준의 대답을 얻지 못하고

함수 블럭 자체를 auto completion 해주는 수준 정도로 쓴다고 한다면 타이핑을 많이 줄여주고,

문맥을 통해 코드 컨벤션까지 맞춰준다고 하니(copilot)

오히려 전문가용 툴이 되지 않을까 라는 생각을 해본다.

Posted by 구차니

동의어 유의어 반의어 사전.

음성인식에서 시소로우 라고 하길래 찾아보니 같은건지 다른건진 모르겠다.

아무튼 유의어 들을 음성인식

 

[링크 : http://www.terms.co.kr/thesaurus.htm?ckattempt=1]

[링크 : https://ko.dict.naver.com/seo.nhn?id=23502100]

[링크 : https://blog.naver.com/sgjjojo/221272842350]

[링크 : https://en.wikipedia.org/wiki/Thesaurus]

[링크 : https://terms.tta.or.kr/dictionary/dictionaryView.do?subject=시소러스]

Posted by 구차니

망할 기자놈들 동영상 링크 정도는 걸어놔야 할 거 아냐

솔찍히 말해서 저런 환경이라면

사람이 운전했어도 정말 아주 주의깊게 보다가 엄청난 반응속도로 급격하게 꺾고

자기가 사고날 각오하고 틀지 않는 이상

사고를 피할 수 없었을 것으로 보인다.


일단 가로등이 없는 부분에서 검은 옷을 입고 지나가는 바람에 판단하기 힘들었을 것 같고

어떤 로직으로 되어있을지 모르겠지만

LIDAR가 아닌 영상판독 만으로 작동하고 있었다면

1~2초 동안의 여유라고 하나, 영상 판독을 통해 객체가 무엇인지

피해야 할 물건인지, 피할 수 있는 거리와 방향인지를 판단하기에는 너무

인간에게 짧은 시간이 아니었을까 생각된다.


만약에 사람이 운전했다면 깜짝놀라 핸들을 꺽어 피하고 

운전자가 다치거나

피하려 했으나 부딛혀 중상 혹은 사망이라는 결론이 나지 않았을까?


LIDAR가 달린 차량이었으나

LIDAR가 고장이 났거나

LIDAR 없이 영상 처리만으로 주행을 하는 테스트를 몰래(?) 하고 있었거나

아니면 정말 갑자기 나타난 물건에 대한 예외처리가 없었거나

(근데.. 전문가 시스템도 아니고 학습 시키는거라면.. 어떤 반응을 했을거 같은데)


아니면 극단적으로

운전자 보호를 우선시 하여, 사고시 최선의 방법으로 운전자를 보호했을 가능성도 있다고 보여진다.

탑승자의 안전을 일부 포기하더라도 보행자의 안전을 최대한 확보하는 계산이 아니라면

그게 최선의 방법이었을테니 말이다.



일단 개인적인 생각

1. LIDAR 정보 공개 할 것으로 생각됨

2. LIDAR ON 이었는데 부딛혔다면 기계학습이냐가 문제가 될 듯

3. 기계학습으로 인해 어떤 룰로 운전을 하냐는 해석할 수 없으므로 흐지부지 될 가능성 있음

4. 전문가 시스템이었다면 왜 그런 테스트 케이스가 없었나로 개발자 갈려 나갈 듯


[링크 : https://www.youtube.com/watch?v=Cuo8eq9C3Ec]



---

우버 자율주행차 사망사고 전 1~2초 여유 있었다

[링크 : http://v.media.daum.net/v/20180322163358447] << 유튜브 있음


우버 자율주행차 사고 영상 공개.."캄캄한 도로서 갑자기 튀어나와"

[링크 : http://v.media.daum.net/v/20180322114149341]

[링크 : http://money.cnn.com/2018/03/19/technology/uber-autonomous-car-fatal-crash/index.html]


사람도 못 피했을 것"..美경찰 "우버 과실 아닌듯

[링크 : http://v.media.daum.net/v/20180322071540006]



+

센서를 동일 평면에 두지 않는다

sync pulse를 연결해서 시간적으로 회피한다.


EYE Safety 이야기도 나오고

결국에 자율주행 차량에서 LIDAR는 과도기로서 사라지고

초음파/RADAR/적외선/가시광선에 대한 제한된 시간에 작동하는 액티브 센서와

상시 작동하는 패시브 센서로 작동하도록 구성되어야 할 듯


Interference Between Sensors

You can not have the beams from multiple LIDARS in the same plane or you will have problems. There are two solutions.

1. Put the sensors out of plane with each other. So they are tilted at different angles.

2. Many sensors have a sync pulse that you can connect between multiple sensors so they will coordinate amongst themselves to avoid interference. 

[링크 : http://robotsforroboticists.com/lidar-fundamentals/]

Posted by 구차니